《Duerdma全国计算机等级考试历年真题3月二级C语言笔试真题及答案》由会员分享,可在线阅读,更多相关《Duerdma全国计算机等级考试历年真题3月二级C语言笔试真题及答案(23页珍藏版)》请在金锄头文库上搜索。
1、精心整理Time will pierce the surface or youth, will be on the beauty of the ditch dug a shallow groove ; Jane will eat rare!A born beauty, anything to escape his sickle sweep.- Shakespeare全国计算机等级考试 历年真题2009年3月二级C语言笔试真题及答案 一、选择题每题2分,共计70分 1.以下表达中正确的选项是 A)栈是先进先出的线性表B)队列是先进后出的线性表C)循环队列是非线性构造D)有序线性表即可以采纳依次存
2、储构造,也可以采纳链式存储构造 2. 支持子程序调用的数据构造是 A)栈B)树C)队列D)二叉树 3. 某二叉树有5个读为2的结点,那么该二叉树中的叶子结点数是 A)10B)8C)6D)44. 以下排序方法中,最坏状况下比拟次数最少的是 A)冒泡排序B)简洁选择排序C)干脆插入排序D)堆排序5. 软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。以下 属于应用软件的是A)编译程序B)操作系统C)教务管理系统D)汇编程序6. 下面表达中错误的选项是 A)软件测试的目的是发觉错误并改正错误B)对被调试程序进展错误定位是程序调试的必要步骤C)程序调试也成为DebugD)软件测试应严格执
3、行测试打算,解除测试的随意性7. 耦合性和内聚性是对模块独立性度量的两个标准。以下表达中正确的选项是 A)提高耦合性降低内聚性有利于提高模块的独立性B)降低耦合性提高内聚性有利于提高模块的独立性C)耦合性是指一个模块内部各个元素间彼此结合的严密程度D)内聚性是指模块间相互连接的严密程度8. 据库应用系统中的核心问题是 A)数据库设计B)数据库系统设计C)数据库维护D)数据库管理员培训9. 有两个关系R,S如下: 由关系R通过运算得到关系S,那么所运用的运算为A)选择B)投影C)插入D)连接10. 将E-R图转换为关系模式时,实体和联系都可以表示为 A)属性B)键C)关系D)域 11.一下选项中
4、合法的标识符是 A)1_1B)1-1C)_11D)1_ _12. 假设函数中有定义语句:int k;,那么 A)系统将自动给k赋初值0B)这是k中的值无定义C)系统将自动给k赋初值-1D)这时k中无任何值13. 一下选项中,能用作数据常量的是 A)o115B)0118D)115L14. 设有定义:int x=2;,一下表达式中,值不为6的是 A)x*=x+1B)X+,2*xC)x*=(1+x)D)2*x,x+=215. 程序段:int x=12; double y=3.141593;printf(%d%8.6f,x,y);的输出结果是 A)123.141593B)12 3.141593C)12
5、,3.141593D)123.141593016. 假设有定义语句:double x,y,*px,*py;执行了px=&x;py=&y;之后,正确的输入语句是 A)scanf(%f%f,x,y);B)scanf(%f%f &x,&y);C)scanf(%lf%le,px,py);D)scanf(%lf%lf,x,y);17. 一下是if语句的根本形式: if(表达式)语句其中表达式A)必需是逻辑表达式B)必需是关系表达式C)必需是逻辑表达式或关系表达式D)可以是随意合法的表达式18. 有以下程序 #includemain()intx;scanf(%d,&x);if(x=3);elseif(x!
6、=10)printf(%dn,x);程序运行时,输入的值在哪个范围才会有输出结果A)不等于10的整数B)大于3且不等于10的整数C)大于3或等于10的整数D)小于3的整数19. 有以下程序 #includemain()inta=1,b=2,c=3,d=0;if(a=1&b+=2)if(b!=2|c-!=3)printf(%d,%d,%dn,a,b,c);elseprintf(%d,%d,%dn,a,b,c);elseprintf(%d,%d,%dn,a,b,c);程序运行后输出结果是A)1,2,3B)1,3,2C)1,3,3D)3,2,120. 一下程序段中的变量已正确定义 for(i=0;i
7、4;i+,j+)for(k=1;k3;k+);printf(*);程序段的输出结果是A)*B)*C)*D)* 21.有以下程序 #includemain()char*s=ABC;doprintf(%d,*s%10);s+;while(*s);留意:字母A的ASCII码值为65。程序运行后的输出结果是A)5670B)656667C)567D)ABC22. 设变量已正确定义,以下不能统计出一行中输入字符个数(不包含回车符)的程序段是 A)n=0;while(ch=getchar()!=n)n+;B)n=0;while(getchar()!=n)n+;C)for(n=0;getchar()!=n;n
8、+);D)n=0;for(ch=getchar();ch!=n;n+);23. 有以下程序 #includemain()inta1,a2;charc1,c2;scanf(%d%c%d%c,&a1,&c1,&a2,&c2);printf(%d,%c,%d,%c,a1,c1,a2,c2);假设通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,程序输出结果是:12,a,34,b 那么正确的输入格式是(以下_代表空格,代表回车)A)12a34bB)12_a_34_bC)12,a,34,bD)12_a34_b24. 有以下程序 #includeintf(intx,in
9、ty)return(y-x)*x);main()inta=3,b=4,c=5,d;d=f(f(a,b),f(a,c);printf(%dn,d);程序运行后的输出结果是A)10B)9C)8D)725. 有以下程序 #includevoidfun(char*s)while(*s)if(*s%2=0)printf(%c,*s);s+;main()chara=good;fun(a);printf(n);留意:字母a的ASCII码值为97,程序运行后的输出结果是A)dB)goC)godD)good26.有以下程序 #includevoidfun(int*a,int*b)int*c;c=a;a=b;b=
10、c;main()intx=3,y=5,*p=&x,*q=&y;fun(p,q);printf(%d,%d,*p,*q);fun(&x,&y);printf(%d,%dn,*p,*q);程序运行后输出的结果是A)3,5,5,3B)3,5,3,5C)5,3,3,5D)5,3,5,327.有以下程序 #includevoidf(int*p,int*q);main()intm=1,n=2,*r=&m;f(r,&n);printf(%d,%d,m,n);voidf(int*p,int*q)p=p+1;*q=*q+1;程序运行后的输出结果是A)1,3B)2,3C)1,4D)1,228. 以下函数按每行8个
11、输出数组中的数据 #includevoidfun(int*w,intn)inti;for(i=0;in;i+)_printf(%d,wi);printf(n);下划线出应填入的语句是A)if(i/8=0) printf(n);B)if(i/8=0) continue;C)if(i%8=0) printf(n);D)if(i%8=0) continue;29. 假设有以下定义 int x10,*pt=x;那么对数组元素的正确引用是A)*&x10B)*(x+3)C)*(pt+10)D)pt+330. 设有定义:char s81;int i=0;,以下不能将一行(不超过80个字符)带有空格 的字符串正确读入的语句或语句组是A)gets(s);B)while(si+=getchar()!=n);si=0;C)scanf(%s,s);D)doscanf(%c,&si);while(si+!=n);si=0;31.有以下程序 #includemain()char*a=abcd,ef,gh,ijk;inti;for(i=0;i4;i+)printf(%c