【计算机类职业资格】二级C语言分类模拟题555及答案解析.doc
《【计算机类职业资格】二级C语言分类模拟题555及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言分类模拟题555及答案解析.doc(18页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言分类模拟题 555及答案解析(总分:61.50,做题时间:90 分钟)一、选择题(总题数:40,分数:61.50)1.C语言中的标识符只能由字母、数字和下划线 3种字符组成,且第一个字符_。(分数:1.00)A.必须为字母B.必须为下划线C.必须为字母或下划线D.可以是字母、数字和下划线中的任意一种2.设有定义: int a=1,b=2,c=3; 以下语句中执行效果与其他三个不同的是_。(分数:2.00)A.if(ab)c=a;a=b;b=c;B.if(ab)c=a,a=b,b=c;C.if(ab)c=a,a=b,b=c;D.if(ab)c=a;a=b;b=c;3.有以下程序 #i
2、ncludestdio.h main() int x, y, z; x=y=1; z=x+, y+, +y; printf(“%d, %d, %d/n“, x, y, z); 程序运行后的输出结果是_。(分数:2.50)A.2, 3, 1B.2, 3, 2C.2, 3, 3D.2, 2, 14.下列关于栈的叙述正确的是_。(分数:2.00)A.栈按“先进先出”组织数据B.栈按“先进后出”组织数据C.只能在栈底插入数据D.不能删除数据5.在一棵二叉树上,第 5层的结点数最多是_。(分数:2.50)A.8B.9C.15D.166.以下叙述中正确的是_。(分数:1.00)A.任何情况下都不能用函数名
3、作为实参B.函数既可以直接调用自己,也可以间接调用自己C.函数的递归调用不需要额外开销,所以效率很高D.简单递归不需要明确的结束递归的条件7.下面属于黑盒测试方法的是_。(分数:1.00)A.错误推测法B.基本路径测试C.判定覆盖D.条件覆盖8.下述程序的输出结果是_。 #includestdio.h void main() int a20,*p4; int i,k=0; for(i=0;i20;i+)ai=i; for(i=0;i4;i+)pi= for(i=0;i4;i+)k=k+*pi; printf(“%d“,k); (分数:2.00)A.10B.18C.6D.输出结果不定9.下面结构
4、体的定义语句中,错误的是_。(分数:2.00)A.struct ordint x; int y; int z;struct ord a;B.struct ord(int x; int y; int z;struct ord a;C.struct ordint x; int y;int z;a;D.structint x; int y; int z;a;10.设有定义:char s81; int i=0;,以下不能将一行(不超过 80个字符)带有空格的字符串正确读入的语句或语句组是_。(分数:2.00)A.gets(s);B.while(si+=getchar()!=“/n“); si=“/0“
5、;C.scanf(“%s“, s);D.do scanf(“%c“, while(si+!=“/n“); si=“/0“;11.以下程序的主函数中调用了在其面前定义的 fun函数 # include stdio.h main() double a15,k; k=fun(a); (分数:1.00)A.double fun(double a15)B.double fun(double *a)C.double fun(double a)D.double fun(double a)12.有以下程序: #include stdio.h main( ) int a=-2,b=0; while(a+ pri
6、ntf(“%d,%d/n“, a,b); 程序运行后输出的结果是_。(分数:1.00)A.0,2B.0,3C.1,3D.1,213.有以下程序: #includestdio.h main() FILE *fp; int k, n, a6=1, 2, 3, 4, 5, 6; fp=fopen(“d2. dat“, “w“); fprintf(fp, “%d%d%d% d/n“, a0, a1, a2); fprintf(fp, “%d%d% d/n“, a3, a4, a5); fclose(fp); fp=fopen(“d2.dat“, “r“); fscanf(fp, “%d%d“, k,
7、n); printf(“%d%d/n“, k, n); fclose(fp); 程序运行后的输出结果是( )。(分数:1.00)A.1B.12 4C.123 4D.123 45614.设变量均已正确定义并赋值,以下与其他三组输出结果不同的一组语句是_。(分数:1.00)A.x+; printf(“%d/n“, x);B.n=+x; printf(“%d/n“, n);C.+x; printf(“%d/n“, x);D.n=x+; printf(“%d/n“, n);15.有以下程序: #includestdio.h int k=5; void f(int *s) s= *s=k; main()
8、 int m=3; f( printf(“%d,%d/n“,m,k); 程序运行后的输出结果是_。(分数:1.00)A.3,3B.5,5C.3,5D.5,316.以下选项中,能用作用户标识符的是_。(分数:1.00)A._0_B.8_8C.voidD.unsigned17.下列二维数组初始化语句中,正确且与语句 int a3=1,2,3,4,5等价的是_。(分数:2.50)A.int a2=1,2,3,4,5;B.int a3=1,2,3,4,5,0;C.int a3=1,0,2,0,3,0;D.int a2=1,2,3),4,5,6;18.有以下程序: #includestdio.h mai
9、n() int i,j,m=55; for(i=1;i=3;i+) for(j=3;j=i;j+)m=m%j; printf(“%d/n“,m); 程序运行后的输出结果是_。(分数:1.00)A.0BlC.2D.319.下列叙述中正确的是_。(分数:1.00)A.存储空间连续的数据结构一定是线性结构B.存储空间不连续的数据结构一定是非线性结构C.没有根节点的非空数据结构一定是线性结构D.具有两个根节点的数据结构一定是非线性结构20.以下错误的定义语句是_。(分数:1.00)A.int x4=1,2,3,1,2,3,1,2,3,1,2,3;B.int x43=1,2,3,1,2,3,(1,2,3
10、,1,2,3;C.int x3=0,1,1,2,3;D.int x3=1,2,3,4;21.程序设计方法要求在程序设计过程中( )。(分数:1.00)A.先编制出程序,经调试使程序运行结果正确后再画出程序的流程图B.先编制出程序,经调试使程序运行结果正确后再在程序中的适当位置处加注释C.先画出流程图,再根据流程图编制出程序,最后经调试使程序运行结果正确后再在程序中的适当位置处加注释D.以上三种说法都不对22.若二维数组 a有 m列,则在 aij前的元素个数为_。(分数:2.00)A.j*m+iB.i*m+jC.j*m+i+1D.i*m+j+l23.有以下程序 #includestdio.h m
11、ain() int i=1; i=ii; printf(“%d/n“, i); 程序运行后的输出结果是_。(分数:2.00)A.7B.-1C.1D.024.有以下程序 #includestdio.h main() int i; for(i=1; i=40; i+) if(i+%5=0) if(+i%8=0)printf(“%d“, i); printf(“/n“); 执行后的输出结果是_。(分数:2.00)A.32B.24C.5D.4025.交换两个变量的值,不允许用临时变量,应该使用_位运算符。(分数:2.00)A. 其中含有的实参个数和是_。(分数:1.00)A.1B.2C.4D.529.
12、定义无符号整数类为 UInt,下面可以作为类 UInt实例化值的是_。(分数:1.00)A.-369B.369C.0.369D.整数集合1,2,3,4,530.若要求从键盘读入含有空格字符的字符串,应使用函数_。(分数:2.00)A.getchar()B.getc()C.gets()D.scanf()31.若有以下程序段 char str412=“aa“,“bbb“,“ccccc“,“d“,*strp4; int i; for(i=0;i4;i+)strpi=stri; 不能正确引用字符串的选项是_。(分数:2.00)A.strpB.str0C.strp3D.*strp32.下面描述中,不属于
13、软件危机的表现的是_。(分数:1.00)A.软件过程不规范B.软件开发生产率低C.软件质量难以控制D.软件成本不断提高33.以下程序的输出结果是_。 #includestdio.h main() int a=1,b=3; if(+a0) else printf(“%d,%d/n“,b,a); (分数:2.50)A.2,2B.1,3C.3,2D.3,134.下述关于数据库系统的叙述中正确的是_。(分数:1.00)A.数据库系统减少了数据冗余B.数据库系统避免了一切冗余C.数据库系统中数据的一致性是指数据类型的一致D.数据库系统比文件系统能管理更多的数据35.有以下程序 #includestdio
14、.h main() int x=1,y=0; if(!x)y+; else if(x=0) if(x)y+=2; else y+=3; printf(“%d/n“,y); 程序运行后的输出结果是_。(分数:2.50)A.0B.2C.1D.336.有三个关系 R、S 和 T如下: RA B C a l 2 b 2 1 c 3 1 SA D c 4 TA B C D c 3 1 4 则由关系 R和 S得到关系 T的操作是_。(分数:1.00)A.自然连接B交C.投影D并37.有以下程序 #include stdio.h #include string.h main() char p20=“a“,“
15、b“,“c“,“d“,q=“abc“,r=“abcde“; strcat(p,r); strcpy(p+strlen(q),q); printf(“%d/n“,strlen(p); 程序运行后的输出结果是_。(分数:1.00)A.6B.9C.11D.738.有以下程序: #include stdio.h int sub(double a, double b) return (int)(a - b -1.3); main( ) printf(“%d/n“, sub(3.2,4.1); 程序运行后的输出结果是_。(分数:1.00)A.-2B.1.7C.-3D.2.039.计算机能直接执行的程序是_
16、。(分数:2.00)A.源程序B.目标程序C.汇编程序D.可执行程序40.下列不属于软件工程的 3个要素的是 _ 。(分数:2.00)A.工具B.过程C.方法D.环境二级 C语言分类模拟题 555答案解析(总分:61.50,做题时间:90 分钟)一、选择题(总题数:40,分数:61.50)1.C语言中的标识符只能由字母、数字和下划线 3种字符组成,且第一个字符_。(分数:1.00)A.必须为字母B.必须为下划线C.必须为字母或下划线 D.可以是字母、数字和下划线中的任意一种解析:2.设有定义: int a=1,b=2,c=3; 以下语句中执行效果与其他三个不同的是_。(分数:2.00)A.if
17、(ab)c=a;a=b;b=c;B.if(ab)c=a,a=b,b=c;C.if(ab)c=a,a=b,b=c;D.if(ab)c=a;a=b;b=c; 解析:3.有以下程序 #includestdio.h main() int x, y, z; x=y=1; z=x+, y+, +y; printf(“%d, %d, %d/n“, x, y, z); 程序运行后的输出结果是_。(分数:2.50)A.2, 3, 1 B.2, 3, 2C.2, 3, 3D.2, 2, 1解析:解析 对于表达式“z=x+,y+,+y;”,因为赋值运算符的优先级高于逗号运算符的优先级,所以可以将上式改成“(x=x+
18、),(y+),(+y)”。然后从左向右先计算表达式 z=x+,因为 x+先使用后自增,所以 z的值为 1,x 的值为 2。再计算逗号表达式第二个表达式 y+,此时 y的值为 1,y+的值为2。最后计算第三个表达式+y,y 的值为 3。故本题答案为 A。4.下列关于栈的叙述正确的是_。(分数:2.00)A.栈按“先进先出”组织数据B.栈按“先进后出”组织数据 C.只能在栈底插入数据D.不能删除数据解析:解析 栈是按“先进后出”的原则组织数据的,数据的插入和删除都在栈顶进行操作。5.在一棵二叉树上,第 5层的结点数最多是_。(分数:2.50)A.8B.9C.15D.16 解析:解析 根据二叉树的性
19、质:二叉树第 i(i1)层上至多有 2 i-1 个结点。得到第 5层的结点数最多是 16个。6.以下叙述中正确的是_。(分数:1.00)A.任何情况下都不能用函数名作为实参B.函数既可以直接调用自己,也可以间接调用自己 C.函数的递归调用不需要额外开销,所以效率很高D.简单递归不需要明确的结束递归的条件解析:解析 在某些情况下,函数名可以作为实参传递,所以 A选项错误。函数递归调用使用栈区来递归,需要额外开销,并且效率不高,C 选项错误。递归调用需要明确指出递归结束条件,否则就陷入死循环了,D 选项错误。7.下面属于黑盒测试方法的是_。(分数:1.00)A.错误推测法 B.基本路径测试C.判定
20、覆盖D.条件覆盖解析:解析 黑盒测试方法也称为功能测试或数据驱动测试。黑盒测试是对软件已经实现的功能是否满足需求进行测试和验证。黑盒测试方法主要有等价类划分法、边界值分析法、错误推测法和因果图等。白盒测试方法主要有逻辑覆盖测试(语句覆盖、路径覆盖、判断覆盖、条件覆盖)、基本路径测试等。故本题答案为 A选项。8.下述程序的输出结果是_。 #includestdio.h void main() int a20,*p4; int i,k=0; for(i=0;i20;i+)ai=i; for(i=0;i4;i+)pi= for(i=0;i4;i+)k=k+*pi; printf(“%d“,k); (
21、分数:2.00)A.10B.18 C.6D.输出结果不定解析:9.下面结构体的定义语句中,错误的是_。(分数:2.00)A.struct ordint x; int y; int z;struct ord a; B.struct ord(int x; int y; int z;struct ord a;C.struct ordint x; int y;int z;a;D.structint x; int y; int z;a;解析:解析 A 选项 struct ord int x; int y; int z;struct ord a;错误,不能在定义结构体的同时,又用结构体类型名定义变量,应该
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 分类 模拟 555 答案 解析 DOC
