《二级C语言笔试试题汇编二级C语言笔试试题汇编笔试.pdf》由会员分享,可在线阅读,更多相关《二级C语言笔试试题汇编二级C语言笔试试题汇编笔试.pdf(80页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、二级C 语言笔试试题汇编二级C 语言笔试试题汇编笔试(针对2008年 4 月)一、选 择 题(40)每 题 1 分,(41)(50)每 题 2 分,共 6 0 分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。01)与十进制数200等值的十六进制数为A)A8B)A4C)C8D)C4答案:C02)DOS文件系统的组织结构属于A)星形结构B)网形结构C)环形结构D)树形结构答案:D03)对存储器按字节进行编址,若某存储器芯片共有10根地址线,则该存储器芯片的存储容量为A)1KBB)2KBC)4KBD)8KB答案:A04)在 DOS环境下,代表键盘和显示器的设备文件名为A)PRNB
2、)CONC)NULD)LPT答案:B05)计算机网络的主要特点是A)运算速度快B)运算精度高C)资源共享D)人机交互答案:C06)磁盘处于写保护状态时其中的数据A)不能读出,不能删改B)可以读出,不能删改C)不能读出,可以删改D)可以读出,可以删改答案:B07)从 Windows环境进入MS-DOS方式后,返回Windows环境的DOS命令为A)EXITB)QUITC)RETD)MSDOS答案:A08)在 Windows环境下,若资源管理器左窗口中的某文件夹左边标有“+”标记,则表示A)该文件夹为空B)该文件夹中含有子文件夹C)该文件夹中只包含有可执行文件D)该文件夹中包含系统文件答案:B09
3、)在 Windows菜单中,暗淡的命令名项目表示该命令A)暂时不能用B)正在执行C)包含下一层菜单D)包含对话框答案:A10)A)将当前应用程序转为后台运行B)退出Windows后再关机C)终止当前应用程序的运行D)退出Windows后重新启动计算机答案:C11)用 C 语言编写的代码程序A)可立即执行B)是一个源程序C)经过编译即可执行D)经过编译解释才能执行答案:B12)结构化程序由三种基本结构组成,三种基本结构组成的算法A)可以完成任何复杂的任务B)只能完成部分复杂的任务C)只能完成符合结构化的任务D)只能完成一些简单的任务答案:A13)以下定义语句中正确的是A)c ha r a=A b
4、=B;B)f loa t a=b=10.0;C)int a=10,*b=&a;D)f loa t*a,b=&a;答案:C14)下列选项中,不能用作标识符的是A)1234B)J_2 一C)晶匚2_D)2_int_答 氮 D15)有以下定义语句double a,b;int w;long c;若各变量已正确赋值,则下列选项中正确的表达式是A)a=a+b=b+B)w%(int)a+b)C)(c+w)%(int)aD)w=a=b;答案:c16)有以下程序ma in()int m=3,n=4,x;x=-m+;x=x+8/+n;printf M%d nH,x);程序运行后的输出结果是A)3B)5C)-lD)
5、-2答案:D17)有以下程序ma in()c ha r a=,a,b;printf f%c,”,+a);printf i,%c n,b=a+4-);)程序运行后的输出结果是A)b,bB)b,cC)a,bD)a,c答案:A18)有以下程序ma in()int m=0256,n=256;printf(,%o%o n,m,n);程序运行后的输出结果是A)0256 0400B)0256 256C)256 400D)400 400答案:C19)有以下程序ma in()int a=666,b=888;printf i(n%d nn,a,b);)程序运行后的输出结果是A)错误信息B)666C)888D)66
6、6,888答案 R20)有以下程序ma in()int i;f or(i=0;i3;i-H-)switc h(i)c a se 0:printf(%d,i);c a se 2:printf(,%d,i);de f a ult:printf(,%d,1,i);程序运行后的输出结果是A)022111B)021021C)000122D)012答案:C21)若 x 和 y 代表整型数,以下表达式中不能正确表示数学关系|x-y|10的是A)a bs(x-y)-1 0&x-y 10C)!(x-y)10D)(x-y)*(x-y)b)if(bc)printf(d”,d+1);e lseprintf(“d”,+
7、d+1);printf C%d n”,d);程序运行后的输出结果是A)2B)3C)43D)44答案:A23)下列条件语句中,功能与其他语句不同的是A)if(a)printf(H%d nn,x);e lse printf(d n”,y);B)if(a=O)printf(%d n,y);e lse printf(n%d nH,x);C)if(a!=O)printf(M%d nH,x);e lse printf f%d n”,y);D)if(a=O)printf f%d n”,x);e lse printf f%d n”,y);答案:D24)有以下程序ma in()int i=O,s=O;M;)if
8、(i=3|i=5)c ontinue;if(i=6)bre a k;i+;s+=i;)printf f%d n”,s);程序运行后的输出结果是A)1OB)13C)21D)程序进入死循环答案:D25)若变量己正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是A)f br(i=1 ,p=1 ;i=5;i+)p*=i;B)f or(i=l;i=5;i+)p=1 ;p*=i;C)i=l;p=1 ;while(i=5)p*=i;i+;D)i=1 ;p=1 ;do p*=i;i+;while(i。则输出结果是A)6,5,A,BB)6,5,65,66C)6,5,6,5D)6,5,6,6较案:A2
9、7)以下能正确定义二维数组的是A)int a 3;B)inta 3=2*3;C)inta 3=;D)inta 23=l,2,3,4;答案:B28)有以下程序int Rint a)re turn a%2;ma in()int s8=1,3,5,2,4,6,i,d=O;f br(i=0;f(si);i+4-)d4-=si;printf(d n“,d);)程序运行后的输出结果是A)9B)llC)19D)21答案:A29)若有以F说明和语句intc 45,(*p)5;P=c;能够正确引用c 数组元素的是A)p+1B)*(p+3)C)*(p+l)+3D)*(p0+2)答案:D30)有以下程序ma in(
10、)int a=7,b=8,*p,*q,*r;p=&a;q=&b;r=p;p=q;q=r;printf%d,%d,%d,%d n,*p,*q,a,b);程序运行后的输出结果是A)8,7,8,7B)7,8,7,808,7,7,8D)7,8,8,7答案:C31)si 和 s2己正确定义并分别指向两个字符串。若要求:当 si 所指串大于s2所指串时,执行语句 S;则以下选项中正确的是A)if(sls2)S;B)if(strc mp(sl,s2)S;C)if(strc mp(s2,s 1 )0)S;D)if l(strc inp(s 1 ,s2)0)S;答案:D32)设有定义语句int x6=2,4,6
11、,8,5,7,*p=x,i;要求依次输出x数组6 个元素中的值,不能完成此操作的语句是A)f or(i=0;i6;i+)printf(H%2dH,*(p+);B)f or(i=0;i6;i+)printf(,%2d,*(p+i);C)f br(i=0;i6;i+)printf(,%2d,*p+);D)f br(i=0;i6;i+)printf(,%2d,(*p)+);答案 D33)有以下程序#inc lude ma in()inta=l,2,3,4,5,6,7,8,9,10,ll,12J,*p=a+5,*q=NULL;*q=*(p+5);printf f%d%d n,*p,*q);)程序运行后
12、的输出结果是A)运行后报错B)6 6C)6 1 1D)5 10答案:A34)设有以下定义和语句inta 32=l,2,3,4,5,6,*p3;p0=a l;则*(p0+l)所代表的数组元素是A)a 0lB)a l0C)a llD)a l2答案:C35)有以下程序ma in()c ha r str10=China,Be ijing),*p=str;printf(%s n,p+10);)程序运行后的输出结果是A)ChinaB)Be ijingC)ngD)ing答案:B36)有以下程序ma in()c ha rs=ABCD,*p;f br(p=s+1 ;pvs+4;p+)printf f%s n”,
13、p);)程序运行后的输出结果是A)ABCDBCDCDDB)ABCDC)BCDD)BCDCDD答案:D37)在函数调用过程中,如果函数如f unA调用了函数f unB,函数f UnB又调用了函数如f unA,则A)称为函数的直接递归调用B)称为函数的间接递归调用C)称为函数的循环调用D)C语言中不允许这样的递归调用答案:B38)己有定义:inti,a 10,*p;,则合法的赋值语句是A)p=100;B)p=a 5;C)p=a 2+2;D)p=a+2;答案:D39)以下叙述中正确的是A)局部交量说明为sta tic 存储类,其生存期将得到延长B)全局变量说明为sta tic 存储类,其作用域将被扩
14、大C)任何存储类的变量在未赋初值时,其值都是不确定的D)形参可以使用的存储类说明符与局部变量完全相同答案:A40)设有定义语句:c ha r c l=92,c 2=92;,则以下表达式中值为零的是A)c lAc 2B)c 1&c 2C)c 2D)c l|c 2答案:A41)程序中对f un函数有如下说明void*f un();此说明的含义是A)f un函数无返回值B)f un函数的返回值可以是任意的数据类型C)f un函数的返回值是无值型的指针类型D)指针f un指向个函数,该函数无返回值答案:C42)有以下程序ma in()c ha r s=Ye s n/Non,*ps=s;puts(ps+
15、4);*(ps+4)=0;puts(s);)程序运行后的输出结果是(选项D 中的第一行是空行)A)n/NoYe s/NoB)/NoYe sC)n/NoYe s/NoD)/NoYe s答案:B43)有以下程序ma in()unsigne d int a;int b=-l;a=b;printf f%u”,a);)程序运行后的输出结果是A)-lB)655350)32767D)-32768答案:B44)有以下程序void f iin(int*a,int i,int j)int t;iRivj)t=a i;a i=a j;a j=t;f un(a,i,j);ma in()intx=2,6,l,8,i;f
16、 iin(x,0,3);f br(i=0;inumB)p-numC)(*p).numD)stu3.a ge答案:D46)有以下程序ma in()intx=l,3,5,7,2,4,6,0,i,j,k;f or(i=0;i=i;j-)1 xj)k=xj;xj=xj+l;xj+1 =k;f br(i=0;i3;i-H-)f or(j=4;jxU+l)k=xj;xj=x|j+l;xLj+l=k;f or(i=0;i8;i+)printf(%d,xi);printf(,n);)程序运行后的输出结果是A)75310246B)01234567C)76310462D)13570246答案:A47)有如下程序#
17、inc lude ma in()FILE*ipl;f pl=f ope n(f l.txtn,wn);f printf(SlJa bc”);f c lose(f pl);若文本文件f l.txt中原有内容为:good,则运行以上程序后文件f l.txt中的内容为A)gooda bcB)a bc dC)a bcD)a bc good答案:C48)(48)(50)共用一题。以下程序的功能是:建立一个带有头结点的单向链表,并将存储在数组中的字符依次转储到链表的各个结点中,请选择正确的选项作为下划线号码与题号相同处的正确答案。#inc lude struc t nodec ha r da ta;stu
18、c t node *ne xt;_(48)_Cre a tList(c ha r*s)struc t node *h,*p,*q;h=(struc t node *)ma lloc(size of struc t node);p=q=h;while(*s!=,0,)p=(struc t node *)ma lloc(size of(struc t node);p-da ta=_(49)_;q-ne xt=p;q=一(50);s+;)p-ne xt=f;re turn h;ma in()c ha r str=nlink lis t*;struc t node *he a d;he a d=Cre
19、 a tList(str);A)c ha r*B)struc t nodeC)struc t node *D)c ha r答案:C49)()(50)共用一题。以下程序的功能是:建立一个带有头结点的单向链表,并将存储在数组中的字符依次转储到链表的各个结点中,请选择正确的选项作为下划线号码与题号相同处的正确答案。#inc lude struc t nodec ha r da ta;stuc t node *ne xt;_(48)_Cre a tList(c ha r*s)struc t node *h,*p,*q;h=(struc t node *)ma lloc(size of(struc t
20、node);P=q=h;while(*s!=1)p=(struc t node *)ma lloc(size of(struc t node);p-da ta=_(49)_;q-ne xt=p;q=一(50);s+;p-ne xt=*;re turn h;ma in()c ha r str=nlink list”;Struc t node *he a d;he a d=Cre a tList(st);A)*sB)sC)*s+D)(*s)+答案:A50)(48)(50)共用一题。以下程序的功能是:建立一个带有头结点的单向链表,并将存储在数组中的字符依次转储到链表的各个结点中,请选择正确的选项作为
21、下划线号码与题号相同处的正确答案。#inc lude struc t nodec ha r da ta;stuc t node *ne xt;_(48)_ Cre a tList(c ha r*s)struc t node *h,*p,*q;h=(struc t node *)ma lloc(size of struc t node);p=q=h;while(*s!=W)p=(struc t node *)ma lloc(size of(struc t node);p-da ta=_(49)_;q-ne xt=p;q=一(50);s+;)p-ne xt=!;re turn h;ma in()c
22、 ha r str=nlink list”;Struc t node *he a d;he a d=Cre a tList(st);)A)p-ne xtB)pC)sD)s-ne xt答案:B二、填空题(每空2 分,共 4 0 分)请将每一个空的正确答案写在答题处【1】至【20】。1)在 64位高档微机中,CPU能同时处理【1】个字节的二进制数据。本小题第1空答案:8 或 八2)E-ma il地址由域名和用户名两部分组成,它们之间用 分隔,其中在 后面的部分是【2】。本小题第1空答案:域名或电子邮件服务器名3)Windows窗口一般由标题栏、菜单栏、控制按钮等部分组成。为了移动窗口,则要用鼠标拖
23、动 31本小题第1空答案:标题栏4)计算机软件分为系统软件和应用软件,UNIX系统属于【4】。本小题第1空答案:系统软件5)在 Windows环境下,为了将屏幕内容存入剪贴板,应 按【5】键。本小题第1空答案:PrintSc re e n或 PrtSc m或 PrtSc6)以下程序段的输出结果是6】。int i=9;printf(%o n,i);本小题第1空答案:1 17)以下程序运行后的输出结果是7】。ma in()int a,b,c;a=25;b=025;c=0 x25;printf i(n%d%d%d nn,a,b,c);本小题第1空答案:25 21 378)以下程序运行后的输出结果是8
24、1ma in()int p7=ll,13,14,15,16,17,18;int i=O,j=O;while(i7&pi%2=1)j+=pi+;)本小题第1空答案:249)以下程序运行后的输出结果是9 ma in()int x=l,y=O,a=O,b=O;switc h(x)c a se 1:switc h(y)c a se 0:a+;bre a k;c a se 1:b-H-;bre a k;c a se 2:a-H-;b-H-;bre a k;printf f%d%d n,a,b);)本小题第1空答案:2 110)以下程序运行后的输出结果是【10】。ma in()inta 44=l,23,4
25、J5,6,7,8,n,12,13,14,15,16,17,18);int i=0,j=0,s=0;while(i+4)(if(i=2|i=4)c ontinue;j=o;do s+=a ij;j+;while(j4);printf f%d n”,s);)本小题第1空答案:9211)以下程序运行后的输出结果是【11】。ma in()c ha r a=La ngua ge”,b=”Progra me”;c ha r*pl,*p2;int k;pl=a;p2=b;f br(k=0;k=7;k+)if(*(pl+k)=*(p2+k)printf(n%c,*(pl+k);本小题第1空答案:ga e12)
26、以下程序运行后的输出结果是【12】。ma in()c ha r a=n123456789n,*p;int i=0;p=a;while(*p)if(i%2=0)*p=*;p+;i+;)puts(a);本小题第1空答案:*2*4*6*8*13)以下程序中,f or循环体执行的次数是【13】。#dc f ine N2#de f lne MN+1#de f ine KM+l*M/2ma in()int i;f br(i=l;i K;i+)本小题第1空答案:414)本小题第1空答案:x本小题第2 空答案:x*x+l或 l+x*x15)以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和。请
27、填空。ma in()int i,a 20,sum,c ount;sum=c ount=0;f br(i=0;i20;i+)sc a nf(%d,16);f br(i=0;i0)c ount+;sum+=17;printf(sum=%d,c ount=%d n,sum,c ount);)本小题第1空答案:&a i或 a+i本小题第2 空答案:a i或*(a+i)16)以下程序中,函数SumColumMin的功能是:求出M 行 N 列二维数组每列元素中的最小值,并计算它们的和值。和值通过形参传回主函数输出。请填空。#de f ine M2#de f ine N4void SumColumMin(i
28、nt a MN,int*sum)int i,j,k,s=O;f dr(i=0;iN;i+)k=0;f or(j=l;ja ji)k=j;s+=【18;19=s;ma in()intxMN=3,2,5,l,4,l,8,3,s;SumColumMin(20);printf f%d n”,s);)本小题第1空答案:a ki本小题第2 空答案:*sum本小题第3 空答案:x,&s-、选 择 题(10)每 小 题 2 分,(11)(50)每 小 题 1 分,共 60 分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。01)数据的存储结构是指A)存储在外存中的数据B)数据所占的存储空间量
29、C)数据在计算机中的顺序存储方式D)数据的逻辑结构在计算机中的表示答案:D02)下列关于栈的描述中错误的是A)栈是先进后出的线性表B)栈只能顺序存储C)栈具有记忆作用D)对栈的插入与删除操作中,不需要改变栈底指针答案:B03)对于长度为n 的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是A)冒泡排序为n/2B)冒泡排序为nC)快速排序为nD)快速排序为n(n-l)/2答案:D04)对长度为n 的线性表进行顺序查找,在最坏情况下所需要的比较次数为A)B)n/2C)nD)n+1答案:C05)下列对于线性链表的描述中正确的是A)存储空间不一定是连续,且各元素的存储顺序是任意的B)存储空
30、间不一定是连续,且前件元素一定存储在后件元素的前面C)存储空间必须连续,且前件元素一定存储在后件元素的前面D)存储空间必须连续,且各元素的存储顺序是任意的答案:A06)下列对于软件测试的描述中正确的是A)软件测试的目的是证明程序是否正确B)软件测试的目的是使程序运行结果正确C)软件测试的目的是尽可能多地发现程序中的错误D)软件测试的目的是使程序符合结构化原则答案:C07)为了使模块尽可能独立,要求A)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强B)模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱D)模块的内聚程度要尽量低,且各
31、模块间的耦合程度要尽量强答案:B08)下列描述中正确的是A)程序就是软件B)软件开发不受计算机系统的限制C)软件既是逻辑实体,又是物理实体D)软件是程序、数据与相关文档的集合答案:D09)数据独立性是数据库技术的重要特点之%所谓数据独立性是指A)数据与程序独立存放B)不同的数据被存放在不同的文件中C)不同的数据只能被对应的应用程序所使用D)以上三种说法都不对答案:D10)用树形结构表示实体之间联系的模型是A)关系模型B 乂 阙 状模型C)层次模型D)以上三个都是答案:C11)算法具有五个特性,以下选项中不属于算法特性的是A)有穷性B)简洁性C)可行性D)确定性答案:B12)以下选项中可作为C
32、语言合法常量的是A)-80.B)-080C)-8e l.OD)-80.0e答案:A13)以下叙述中正确的是A)用 C 程序实现的算法必须要有输入和输出操作B)用 C 程序实现的算法可以没有输出但必须要有输入C)用 C 程序实现的算法可以没有输入但必须要有输出D)用 C 程序实现的算法可以既没有输入也没有输出答案:C14)以下不能定义为用户标识符是A)Ma inB)_0C)_intD)size of答案:D15)”以下选项中,不能作为合法常量的是A)1.234e 04B)1.234e 0.4C)1.234e+4D)1.234e 0答案:B16)数字字符0 的 ASCII值为48,若有以下程序ma
33、 in()c ha r a-printf C%c ,b+);printf(d n”,b-a);)程序运行后的输出结果是A)3,2B)50,2C)2,2D)2,50答案:C17)有以下程序ma in()int m=12,n=34;printf f%d%d”,m+,+n);printf,%d%d n,n+,-H-m);程序运行后的输出结果是A)12353514B)12353513C)12343514D)12343513答案:A18)有定义语句:int b;c ha r 则正确的输入语句是A)sc a nf f%d%s”,&b,&c);B)sc a nf(H%d%sM,&b,c);C)sc a nf
34、(n%d%sn,b,c);D)sc a nf(%d%s,b,&c);答案:B19)有以下程序ma in()int m,n,p;sc a nf i(m=%dn=%dp=%d,&m,&n,&p);printf(,%d%d%d n,m,n,p);)若想从键盘上输入数据,使变量m 中的值为123,n 中的值为456,p 中的值为789,则正确的输入是A)m=123n=456p=789B)m=123 n=456 p=789C)m=123,n=456,p=789D)123 456 789答塞 A20)“有以下程序ma in()int a,b,d=25;a=d/10%9;b=a&(-l);printf(,%
35、d,%d n,a,b);程序运行后的输出结果是A)6,lB)2,lC)6,0D)2,0答案:B21)有以下程序ma in()int i=l,j=2,k=3;if(i+=l&(+j=3|k+=3)printf(%d%d%d nH,ij,k);)程序运行后的输出结果是A)1 23B)2 3 4C)2 2 3D)2 3 3答案:D22)若整型变量a、b、c、d 中的值依次为:1、4、3、2。则条件表达式a b?a:c d?c:d的值是A)1B)2C)3D)4答案:A23)有以下程序ma in()int p8=ll,12,13,14,15,16,17,18,i=0,j=0;while(i+y?x:y;
36、int f 2(int x,int y)re turn xy?y:x;ma in()int a=4,b=3,c=5,d=2,e g;e=f 2(f l(a,b),f l(c,d);f=f 1 (f 2(a,b),f 2(c,d);g=a+b+c+d-e-fprintf(n%d,%d,%d nn,e,f,g);程序运行后的输出结果是A)4,3,7B)3,4,7C)5,2,7D)2,5,7答案:A27)已有定义:c ha ra=xyz,b=f x,y,N;,以下叙述中正确的是A)数 组 a和 b 的长度相同B)a 数组长度小于b 数组长度C)a 数组长度大于b 数组长度D)上述说法都不对答案:C2
37、8)有以下程序void f(int*x,int*y)int t;ma in()inta 8=l,2,3,4,5,6,7,8,i,*p,*q;p=a;q=&a 7;while (pq)f(p,q);p+十;q-;f br(i=O;i8;i+)程序运行后的输出结果是A)8,2,3,4,5,6,7,1,B)5,6,7,8,l,2,3,4,01,2,3,4,5,6,7,8,D)8,7,6,5,4,3,2,1,答案:D29)有以下程序ma in()inta 33,*p,i;p=&a OO;f br(i=0;i9;i-H-)pi=i;f or(i=0;i=n;i-)a i+l=a i;)ma in()in
38、t i,a N=1,2,3,4,5,6,7,8,9,10;f un(a,2,9);f br(i=0;i5;i+)printf(%d,a i);程序运行后的输出结果是A)10234B)12344C)12334D)1 2234答案:C32)有以下程序ma in()inta 32=0,(*ptr)2,ij;f dr(i=0;i2;i+)ptr=a+i;sc a nf(n%d,ptr);ptr+;)f br(i=0;i3;i-H-)f orj=0;j2;j+)printf(f%2d,a iU);printf f Xn(1);若运行时输入:1 2 3 回车,则输出结果为A)产生错误信息B)1 02000
39、C)1 23000D)1 02030答案:B33)有以下程序prt(int*m,int n)int i;f br(i=0;in;i-H-)mi-H-;ma in()inta=l,2,3,4,5),i;prt(a,5);f br(i=0;i5;i+)printf(H%d,a i);程序运行后的输出结果是A)1,2,3,4,5,B)2,3,4,5,6,C)3,4,5,6,7,D)2,3,4,5,l,答案:B34)有以下程序ma in()inta=l,2,3,4,5,6,7,8,9,0,*p;f or(p=a;pa+10;p+)printf(%d,*p);程序运行后的输出结果是A)l,2,3,4,5
40、,6,7,8,9,0,B)2,3,4,5,6,7,8,9,10,1,C)0,l 23,4,5,6,7,8,9,D)l,1,1,1,1,1,1,1,1,1,答案:A35)有以下程序#de f ine P 3void F(int x)re turn(P*x*x);ma in()printf(%d n,F(3+5);程序运行后的输出结果是A)192B)29C)25D)编译出错答案:D36)有以下程序ma in()int c=35;printf i(n%d n,c&c);程序运行后的输出结果是A)0B)70C)35D)1答案:C37)以下叙述中正确的是A)预处理命令行必须位于源文件的开头B)在源文件的
41、行上可以有多条预处理命令C)宏名必须用大写字母表示D)宏替换不占用程序的运行时间答案:D38.若 有以下说明和定义union dtint a;c ha r b;double c;da ta;以下叙述中错误的是A)da ta 的每个成员起始地址都相同B)变量da ta 所占内存字节数与成员c 所占字节数相等C)程序段:da ta.a=5;printf(%f n,da ta.c);输出结果为 5.000000D)da ta 可以作为函数的实参答案:C39)以下语句或语句组中,能正确进行字符串赋值的是A)c ha r*sp;*sp=right!;B)c ha r s10;s=right!;C)c h
42、a r s10;*s=right!;D)c ha r*sp=right!答案:D40)设有如下说明type de f struc t ST long a;int b;c ha r c 2;NEW;则下面叙述中正确的是A)以上的说明形式非法B)ST是一个结构体类型C)NEW是一个结构体类型D)NEW是一个结构体变量答案:C41)有以下程序ma in()int a=l,b;f br(b=1 ;b=8)bre a k;if(a%2=l)a+=5;c ontinue;a-=3;)primf f%d n”,b);程序运行后的输出结果是A)3B)4C)5D)6答案:B42)有以下程序ma in()c ha
43、 r s=,159,*p;P=s;printf C%c”,*p+);printf,c”,*p+);)程序运行后的输出结果是A)15B)16C)12D)59答案:A43)有以下函数f iin(c ha r*a,c ha r*b)while(*a!=O)&(*b!=)&(*a=*b)a+;b+;re turn(*a-*b);该函数的功能是A)计算a 和 b 所指字符串的长度之差B)将 b 所指字符串复制到a 所指字符串中C)将 b 所指字符串连接到a 所指字符串后面D)比较a 和 b 所指字符串的大小答案:D44)有以下程序ma in()int num44=1,2,3,4,5,6,7,8,9,10
44、,11,12,13,14,15,16,i,j;f br(i=0;i4;i-H-)f or j=l;jne xt=q-ne xt;B)p-ne xt=p-ne xt-ne xt;C)p-ne xt=r;D)p=q-ne xt;答案:D48)以下对结构体类型变量td的定义中,错误的是A)type de f struc t a aint n;f loa t m;AA;AA td;B)struc t a aint n;f loa t m;td;struc t a a td;C)struc tint n;f loa t m;a a;struc t a a td;D)struc t int n;f loa
45、 t m;td;答案:C49)以下与函数f ke e k(f p,OL,SEEK_SET)有相同作用的是A)f e of(f p)B)f te ll(ip)C)f ge tc(f p)D)re wind(f p)答案:D50)有以下程序#inc lude void Write Str(c ha r*f h,c ha r*str)FILE*f p;f p=f bpe n(f h,w);f puts(str,f p);f c lose(f p);ma in()Write StrCtl.da f Vta rt);Write StrC,tl.da tt7,e ndH);程序运行后,文件tl.da t中
46、的内容是A)sta rtB)e ndC)sta rte ndD)e ndrt答案:B二、填 空 题(每 空 2 分,共 4 0 分)请将每一个空的正确答案写在答题处【1】至【20】。1)某二叉树中度为2 的结点有18个,则该二叉树中有【1】个叶子结点。本小题第1空答案:192)在面向对象方法中,类的实例称为【2】。本小题第1空答案:对象3)诊断和改正程序中错误的工作通常称为 3L本小题第1空答案:调 试 或 程 序 调 试 或 软 件 调 试 或 De bug或调试程序或调试软件4)在关系数据库中,把数据表示成二维表,每一个二维表称为【4】。本小题第1空答案:关 系 或 关 系 表5)问题处理
47、方案的正确而完整的描述称为 5L本小题第1空答案:算 法 或 程 序 或 流 程 图6)以下程序运行时若从键盘输入:10 20 30 回车。输出结果是6】。#inc lude ma in()int i=0,j=0,k=0;sc a nf(n%d%*d%dM,&i,&j,&k);printf(%d%d%d n,ij,k);本小题第1空答案:10 3007)以下程序运行后的输出结果是71#de f ine S(x)4*x*x+lma in()int i=6,j=8;printf f%d n”,S(i+j);)本小题第1空答案:818)以下程序运行后的输出结果是8Lma in()int a=3,b=
48、4,c=5,t=99;if i(ba&a c)t=a;a=c;c=t;if a c&bc)t=b;b=a;a=t;printf(n%d%d%d nna,b,c);本小题第1空答案:4 5 999)以下程序运行后的输出结果是91ma in()int a,b,c;a=1 0;b=20;c=(a%bl);printf i(d%d%d nMa,b,c);)本小题第1空答案:10 20 010)以下程序运行后的输出结果是【10】。ma in()c ha r c l,c 2;f or(c 1 =0,c 2=9;c Kc 2;c 1 -H-,c 2-)printf(n%c%cn,c l,c 2);print
49、f f n“);本小题第1空答案:091827364511)已知字符A 的 ASCII代码值为65,以下程序运行时若从键盘输入:B33V回 车 则 输 出 结 果 是111#inc lude ma in()c ha r a,b;a=ge tc ha r();sc a nf(%dn,&b);a=a-A,+0,;b=b*2;printf(n%c%c nHa,b);本小题第1空答案:1B12)以下程序中,f un函数的功能是求3行 4 列二维数组每行元素中的最大值。请填空。void f un(int i,int,int(*)4,int*);ma in()int a 34=12,41,36,28,19
50、,33,15,27,3,27,19,1,b3,i;f un(3,4,a,b);f or(i=0;i3;i+)printf(n%4dn,bi);printf(n n);void f un(int m,int n,int a r4,int*br)int i,j,x;f br(i=0;im;i+)x=a ri0;f or(j=O;jn;j+)if(xa rij)x=a ri|j;12=x;本小题第1空答案:bri或*(br+i)13)以下程序运行后的输出结果是【13】。void swa p(int x,int y)int t;t=x;x=y;y=t;printf(%d%d n,x,y);ma in(