【计算机类职业资格】全国计算机等级考试二级C语言真题2010年9月及答案解析.doc
《【计算机类职业资格】全国计算机等级考试二级C语言真题2010年9月及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】全国计算机等级考试二级C语言真题2010年9月及答案解析.doc(16页珍藏版)》请在麦多课文档分享上搜索。
1、全国计算机等级考试二级 C 语言真题 2010 年 9 月及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:40,分数:70.00)1.下列叙述中正确的是( )。(分数:2.00)A.线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的B.线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构C.线性表的链式存储结构所需要的存储空唰一般要少于顺序存储结构D.上述三种说法都不对2.下列叙述中正确的是( )。(分数:2.00)A.在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化B.在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化C.在栈中,栈底指
2、针不变,栈中元素随栈顶指针的变化而动态变化D.上述三种说法都不对3.软件测试的目的是( )。(分数:2.00)A.评估软件可靠性B.发现并改正程序中的错误C.改正程序中的错误D.发现程序中的错误4.下面描述中,不属于软件危机表现的是( )。(分数:2.00)A.软件过程不规范B.软件开发生产率低C.软件质量难以控制D.软件成本不断提高5.软件生命周期是指( )。(分数:2.00)A.软件产品从提出、实现、使用维护到停止使用退役的过程B.软件从需求分析、设计、实现到测试完成的过程C.软件的开发过程D.软件的运行维护过程6.面向对象方法中,继承是指( )。(分数:2.00)A.一组对象所具有的相似
3、性质B.一个对象具有另一个对象的性质C.各对象之间的共同性质D.类之间共享属性和操作的机制7.层次型、网状型和关系型数据库划分原则是( )。(分数:2.00)A.记录长度B.文件的大小C.联系的复杂程度D.数据之间的联系方式8.一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是( )。(分数:2.00)A.一对一B.一对多C.多对多D.多对一9.数据库设计中反映用户对数据要求的模式是( )。(分数:2.00)A.内模式B.概念模式C.外模式D.设计模式10.有三个关系 R、S 和 T 如下: (分数:2.00)A.自然连接B.交C.投影D.并11
4、.以下关于结构化程序设计的叙述中正确的是( )。(分数:1.00)A.一个结构化程序必须同时由顺序、分支、循环三种结构组成B.结构化程序使用 goto 语句会很便捷C.在 C 语言中,程序的模块化是利用函数实现的D.由三种基本结构构成的程序只能解决小规模的问题12.以下关于简单程序设计的步骤和顺序的说法中正确的是( )。(分数:1.00)A.确定算法后,整理并写出文档,最后进行编码和上机调试B.首先确定数据结构,然后确定算法,再编码,并上机调试,最后整理文档C.先编码和上机调试,在编码过程中确定算法和数据结构,最后整理文档D.先写好文档,再根据文档进行编码和上机调试,最后确定算法和数据结构13
5、.以下叙述中错误的是( )。(分数:1.00)A.C 程序在运行过程中所有计算都以二进制方式进行B.C 程序在运行过程中所有计算都以十进制方式进行C.所有 C 程序都需要编译链接无误后才能运行D.C 程序中整型变量只能存放整数,实型变量只能存放浮点数14.有以下定义:int a;long b;double x,y;则以下选项中正确的表达式是( )。(分数:1.00)A.a%(int)(x-y)B.a=x!=y;C.(a*y)%bD.y=x+y=x15.以下选项中能表示合法常量的是( )。(分数:1.00)A.整数:1,200B.实数:1.5E2.0C.字符斜杠:/D.字符串:“/007“16.
6、表达式 a+=a-=a=9 的值是( )。(分数:1.00)A.9B.-9C.18D.017.若变量已正确定义,在 if(W)printf(“%d/n“,k);中,以下不可替代 W 的是( )。(分数:1.00)A.ab+cB.ch=getchat()C.a=b+cD.a+18.有以下程序: #includestdio.h main() int a=1,b=0; if(!a)b+: else if(a=0) if(a)b+=2; else b+=3: printf(“%d/n“,b); 程序运行后的输出结果是( )。(分数:1.00)A.0B.1C.2D.319.若有定义语句 int a,b;
7、double x;则下列选项中没有错误的是( )。(分数:1.00)A.switch(x%2) cage 0:a+;break; case 1:b+;break; default:a+;b+; B.switch(int)x/2.0) ease 0:a+;break; case 1:b+;break; default:a+;b+; C.switeb(int)x%2) case 0:a+;break; case 1:b+;break; default:a+;b+; D.switch(int)(x)%2) case 0.0:a+;break; case 1.0:b+;break; default:a
8、+;b+; 20.有以下程序 #includestdio.h main() int a=1,b=2; while(a6)b+=a;a+=2;b%=10; printf(“%d,%d、n“,a,b); 程序运行后的输出结果是( )。(分数:1.00)A.5,11B.7,1C.7,11D.6,121.有以下程序 #includestdio.b main() int y=10; While(y-); printf(“y=%d/n“,y); 程序执行后的输出结果是( )。(分数:2.00)A.y=0B.y=-1C.y=1D.while 构成无限循环22.有以下程序 #includestdio.h ma
9、in() char S=“rstuv“; printf(“%c/n“,*s+2); 程序运行后的输出结果是( )。(分数:2.00)A.tuvB.字符 t 的 ASCII 码值C.tD.出错23.有以下程序 #includestdio.h #includestring.b main() char x=“STRING“; x0=0;x1=/0;x2=0; printf(“%d%d/n“,sizeof(x),strlen(x); 程序运行后的输出结果是( )。(分数:2.00)A.6 1B.7 0C.6 3D.7 124.有以下程序 #includestdio.h int f(int x); ma
10、in() int n=1,m; m=f(f(f(n);printf(“%d/n“,m); int f(int x) return x*2; 程序运行后的输出结果是( )。(分数:2.00)A.1B.2C.4D.825.以下程序段完全正确的是( )。(分数:2.00)A.int *p;scanf(“%d“,p);B.int *p;scanf(“%d“,p);C.int k,*p=k;scanf(“%d“,p)D.int k,*p;*p=k;scanf(“%d“,p)26.有定义语句:int*p4;以下选项中与此语句等价的是( )。(分数:2.00)A.int p4;B.int *p;C.int*
11、(p4);D.int(*p)4;27.下列定义数组的语句,正确的是( )。(分数:2.00)A.int N=10; int xN;B.#define N 10 int xN;C.int x010;D.int x;28.若要定义一个具有 5 个元素的整型数组,以下错误的定义语句是( )。(分数:2.00)A.int a5=0;B.int b=0,0,0,0,0;C.int c2+3;D.int i=5,di;29.有以下程序 #includestdio.h void f(int *p); main() int a5=1,2,3,4,5),*r=a; f(r);printf(“%d/n“,*r);
12、 void f(int *P) p=p+3;printf(“%d,“,*p); 程序运行后的输出结果是( )。(分数:2.00)A.1,4B.4,4C.3,1D.4,130.有以下程序(函数 fun 只对下标为偶数的元素进行操作) #includestdio.h void fun(int *a,int n) int i,j,k,t; for(i=0;in-1;i+=2) k=i; for(j=i;jn;j+=2)if(ajak)k=j; t=ai;ai=ak;ak=t; main() int aa10=1,2,3,4,5,6,7),i; fun(aa,7); for(i=0;i7;i+)pri
13、ntf(“%d,“,aai); printf(“/n“); 程序运行后的输出结果是( )。(分数:2.00)A.7,2,5,4,3,6,1B.1,6,3,4,5,2,7C.7,6,5,4,3,2,1D.1,7,3,5,6,2,131.下列选项中,能够满足“若字符串 s1 等于字符串 s2,则执行 ST”要求的是( )。(分数:2.00)A.if(strcmp(s2,s1)=0)ST;B.if(s1=s2)ST;C.if(strcpy(s1,s2)=1)ST;D.if(s1-s2=0)ST;32.以下不能将 s 所指字符串正确复制到 t 所指存储空间的是( )。(分数:2.00)A.while(
14、*t= *s)t+;s+;)B.for(i=0;ti=si;i+);C.do*t+=*s+;while(*s);D.for(i=0,j=0;ti+=sj+;);33.有以下程序(strcat 函数用以连接两个字符串) #includestdio.h #includestring.h main() char a20=“ABCD/0EFG/0“,b=“IJK“; strcat(a,b);printf(“%s/n“,a); 程序运行后的输出结果是( )。(分数:2.00)A.ABCDE/0FG/0IJKB.ABCDIJKC.IJKD.EFGIJK34.有以下程序,程序中库函数 islower(ch)
15、用以判断 ch 中的字母是否为小写字母 #includestdio.h #includectype.h void fun(char*P) int i=0; while(pi) if(pi=islower(pi-1)pi-1=pi-1-a+A; i+: main() char s1100=“ab cd EFG!“; fun(s1);printf(“%s/n“,s1); 程序运行后的输出结果是( )。(分数:2.00)A.ab cd EFG!B.Ab Cd EFg!C.aB cD EFG!D.ab cd EFg!35.有以下程序 #includestdio.h void fun(int x) if
16、(x/21)fun(x/2); printf(“%d“,x); main() fun(7);printf(“/n“);) 程序运行后的输出结果是( )。(分数:2.00)A.1 3 7B.7 3 1C.7 3D.3 736.有以下程序 #includestdio.h int fun() static int x=1; x+=1;return x: main() int i,s=1; for(i=1;i=5;i+)s+=fun(); printf(“%d/n“,s); 程序运行后的输出结果是( )。(分数:2.00)A.11B.21C.6D.12037.有以下程序 #includestdio.h
17、 #includestdlib.h main() int *a,*b,*c; a=b=c=(int*)malloc(sizeof(int); *a=1;*b=2,*c=3; a=b: printf(“%d,%d,%d/n“,*a,*b,*c); 程序运行后的输出结果是( )。(分数:2.00)A.3,3,3B.2,2,3C.1,2,3D.1,1,338.有以下程序 #includestdio.h main() hat s,t,A=10;double B=6; s=sizeof(A);t=sizeof(B);printf(“%d,%d/n“,s,t); 在 VC6 平台上编译运行,程序运行后的输
18、出结果是( )。(分数:2.00)A.2,4B.4,4C.4,8D.10,639.若有以下语句 typedef struct S int g;char h;T; 以下叙述中正确的是( )。(分数:2.00)A.可用 S 定义结构体变量B.可用 T 定义结构体变量C.S 是 struct 类型的变量D.T 是 struct S 类型的变量40.有以下程序 includestdioh main() short c=124; c=c_; printf(“dn”、C); 若要使程序的运行结果为 248,应在下划线处填入的是(分数:2.00)A.2B.|248C.0248D.1二、B填空题/B(总题数:
19、15,分数:30.00)41.一个栈的初始状态为空。首先将元素 5,4,3,2,1 依次入栈,然后退栈一次,再将元素 A,B,C,D依次入栈,之后将所有元素全部退栈,则所有元素退栈(包括中间退栈的元素)的顺序为U (1) /U。(分数:2.00)填空项 1:_42.在长度为 n 的线性表中,寻找最大项至少需要比较U (2) /U次。(分数:2.00)填空项 1:_43.一棵二叉树有 10 个度为 1 的结点,7 个度为 2 的结点,则该二叉树共有U (3) /U个结点。(分数:2.00)填空项 1:_44.仅由顺序、选择(分支)和重复(循环)结构构成的程序是U (4) /U程序。(分数:2.0
20、0)填空项 1:_45.数据库设计的四个阶段是:需求分析,概念设计,逻辑设计和U (5) /U。(分数:2.00)填空项 1:_46.以下程序运行后的输出结果是U (6) /U。 #includestdio.h main() int a=200,b=010; printf(“%d%d/n“,a,b); (分数:2.00)填空项 1:_47.有以下程序 #includestdio.h main() int x,y; scarf(“%2d%1d“,x,y);printf(“%d/n“,x+y); 程序运行时输入:1234567,程序的运行结果是U (7) /U。(分数:2.00)填空项 1:_48
21、.在 C 语言中,当表达式值为 0 时表示逻辑值“假”,当表达式值为U (8) /U时表示逻辑值“真”。(分数:2.00)填空项 1:_49.有以下程序 #includestdio.h main() int i,n=0,0,0,0,0; for(i=l;i=4;i+) ni=ni-1*3+1;printf(“%d“,ni); 程序运行后的输出结果是U (9) /U(分数:2.00)填空项 1:_50.以下 fun 函数的功能是:找出具有 N 个元素的一维数组中的最小值,并作为函数值返回,请填空。(设 N 已定义) int fun(int xN) int i,k=0; for(i=0;iN;i+
22、) if(xixk)k=U (10) /U; return xk; (分数:2.00)填空项 1:_51.有以下程序: #inciudestdio.h int *f(int *P,int *q); main() int m=1,n=2,*r=m; r=f(r,n);printf(“%d/n“,*r); int *f(int*p,int*q) return(*p*q)?p:q; 程序运行后的输出结果是U (11) /U(分数:2.00)填空项 1:_52.以下 fun 函数的功能是在 N 行 M 列的整型二维数组中,选出一个最大值作为函数值返回,请填空。(设 M,N 已定义) int fun(i
23、nt aNM) int i,j,row=0,co1=0; for(i=0;iN;i+) for(i=0;jM;j+) if(aijarowco1)row=i;co1=j; return U(12) /U; (分数:2.00)填空项 1:_53.有以下程序 #includestdio.h main() int n2,ij; for(i=0;i2;i+)ni=0; for(i=0;i2;i+) for(j=0;j2;j+)nj=ni+1; printf(“%d/n“,n1); 程序运行后的输出结果是U (13) /U。(分数:2.00)填空项 1:_54.以下程序的功能是:借助指针变量找出数组元素
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 全国 计算机等级考试 二级 语言 2010 答案 解析 DOC
