《2006年4月全国计算机等级考试二级C语言笔试试卷及标准》由会员分享,可在线阅读,更多相关《2006年4月全国计算机等级考试二级C语言笔试试卷及标准(17页珍藏版)》请在金锄头文库上搜索。
1、2006年4月全国计算机等级考试二级C语言笔试试卷及标准解析日期:2006-12-18来源: 作者:admin字体:大 中 小 2006年4月全国计算机等级考试二级C语言笔试试卷及标准解析一、选择题(1)一(10)每题2分,(11)一(50)每题1分,共60分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。(1)下列选项中不属于结构化程序设计方法的是A)自顶向下B)逐步求精C)模块化 D)可复用(2)两个或两个以上模块之间关联的紧密程度称为A)耦合度B)内聚度C)复杂度 D)数据传输特性(3)下列叙述中正确的是A)软件测试
2、应该由程序开发者来完成B)程序经调试后一般不需要再测试C)软件维护只包括对程序代码的维护D)以上三种说法都不对(4)按照“后进先出”原则组织数据的数据结构是A)队列B)栈C)双向链表D)二叉树(5)下列叙述中正确的是A)线性链表是线性表的链式存储结构B)栈与队列是非线性结构C)双向链表是非线性结构D)只有根结点的二叉树是线性结构(6)对如下二叉树ABDECF进行后序遍历的结果为A)ABCDEFB)DBEAFCC)ABDECFD)DEBFCA(7)在深度为7的满二叉树中,叶子结点的个数为A)32B)31 C)64D)63(8)“商品”与“顾客”两个实体集之间的联系一般是A)一对一B)一对多C)多
3、对一D)多对多(9)在E-R图中,用来表示实体的图形是A)矩形B)椭圆形C)菱形D)三角形(10)数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系是A)DB包含DBS和DBMSB)DBMS包含DB和DBSC)DBS包含DB和DBMSD)没有任何关系(11)以下不合法的用户标识符是A)j2_KEYB)DoubleC)4dD)_8_(12)以下不合法的数值常量是A)011B)1e1C)8.0E0.5D)0xabcd(13)以下不合法的字符常量是A)018B) C)D)xcc(14)表达式3.6-52+1.2+52的值是A)4.3B)4.8C)3.3 D)3.8 (15)以下能正确定义
4、字符串的语句是A)char str=064;B)char str=kx43;C)char str=; D)char str=0; (16)以下数组定义中错误的是A)int x3=0;B)int x23=l,2,3,4,5,6;C)int x3=l,2,3,4,5,6;D)int x23=l,2,3,4,5,6; (17)若要求从键盘读入含有空格字符的字符串,应使用函数A)getc()B)gets()C)getchar()D)scanf() (18)以下四个程序中,完全正确的是A)#include B)#include main();main()/*programming*/*/ program
5、ming /*/printf(programming!n); printf(programming!n);C) #include D) include main()main()/*/*programming*/*/*programming*/printf(programming! n); printf(programming!n); (19)若有定义:floatx=1.5;int a=1,b=3,c=2;则正确的switch语句是A)switch(x)B)switch(int)x);case 1.0:printf(*n); case 1:printf(*n);case 2.0:printf(*
6、n); case 2:printf(*n);C)switch(a+b) D)switch(a+b)case 1:printf(*n);case 1:printf(*n); case 2+1:printf(*n);case c:printf(*n);(20)若各选项中所用变量已正确定义,函数fun中通过return语句返回一个函数值,以下选项中错误的程序是A)main() B)float fun(int a,int b)x=fun(2,10); main()float fun(int a,int b) x=fun(i,j);C)float fun(int,int); D)main() main(
7、) float fun(int i,int j);x=fun(2,10); x=fun(i,j); float fun(int a,int b) float fun(int a,int b)(21)在以下给出的表达式中,与while(E)中的(E)不等价的表达式是A)(!E=0)B)(E0Enext=r-next;p-next=r;r-next=q;B)p-next=r;q-next=r-next;r-next=q;C)q-next=r-next;r-next=q;p-next=r;D)r-next=q;p-next=r;q-next=r-next;(26)有以下程序段struct stint
8、 x;int *y;)*pt;int a=l,2,b=3,4;struct st c2=10,a,20,b;pt=c;以下选项中表达式的值为11的是A)*pt-yB)pt-x C)+pt-x D)(pt+)-x(27)设fp为指向某二进制文件的指针,且已读到此文件末尾,则函数feof(fp)的返回值为A)EOFB)非0值C)0 D)NULL(28)设有以下语句int a=1,b=2,c;c=a(b2);执行后,C的值为A)6B)7C)8D)9(29)有以下程序#include main()char c1,c2,c3,c4,c5,c6;scanf(cccc,&c1,&c2,&c3,&c4);c5
9、=getchar(); c6=getchar();putchar(c1);putchar(c2);printf(ccn,c5,c6);程序运行后,若从键盘输入(从第1列开始)12345678则输出结果是A)1267B)1256C)1278D)1245(30)有以下程序main() int y=10;while(y-);printf(y=dn,y);程序执行后的输出结果是A)y=0B)y=-1C)y=1D)while构成无限循环(31)有以下程序main()int a=0,b=0,c=0,d=0;if(a=1) b=1;c=2;else d=3;printf(d,d,d,dn,a,b,c,d);
10、程序输出A)0,1,2,0B)0,0,0,3C)1,1,2,0D)编译有错(32)有以下程序main()int i,j,x=0;for(i=0;i2;i+)x+;for(j=0;j=3;j+)if(j2)continue;x+;x+;printf(x=dn,x); 程序执行后的输出结果是A)x=4B)x=8C)x=6D)x=12(33)有以下程序int fun1(double a)return a*=a;int fun2(double x,double y)double a=0,b=0;a=fun1(x);b=fun1(y);return(int)(a+b);main()double w;w=
11、fun2(1.1,2.0);程序执行后变量w中的值是A)5.21B)5C)5.0D)0.0(34)有以下程序 main() int i,t3=9,8,7,6,5,4,3,2,1;for(i=0;i3;i+) printf(d,t2-ii);程序执行后的输出结果是A)7 5 3B)3 5 7C)3 6 9D)7 5 1(35)有以下程序 fun(char p10) int n=0,i;for(i=0;i7;i+)if(pi0=T)n+;return n;main()char str10=Mon,Tue,Wed,Thu,Fri,Sat,Sun; printf(dn,fun(str);程序执行后的输出结果是A)1B)2C)3D)0(36)有以下程序main()int i,s=0,t=l,2,3,4,5,6,7,8,