【计算机类职业资格】二级C语言分类模拟题506及答案解析.doc
《【计算机类职业资格】二级C语言分类模拟题506及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言分类模拟题506及答案解析.doc(16页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言分类模拟题 506 及答案解析(总分:55.00,做题时间:90 分钟)一、选择题(总题数:35,分数:55.00)1.有以下程序: #includestdio.h struct S int n;int a20; void f(struct S*p) int i,j,t; for(i=0;ip-n-1;i+) for(j=i+1;jp-n;j+) if(p-aip-aj) t=p-ai; p-ai=p-aj; p-aj=t; main() int i; struct S s=10,2,3,1,6,8,7,5,4,10,9; f( for(i=0;is.n;i+) printf(“
2、%d,“,s.ai); 程序的运行结果是_。(分数:2.00)A.2,3,1,6,8,7,5,4,10,9,B.10,9,8,7,6,5,4,3,2,1,C.1,2,3,4,5,6,7,8,9,10,D.10,9,8,7,6,1,2,3,4,5,2.若有定义 int a; float b; double c; 程序运行时输入: 3 4 5回车 能把值 3 输入给变量 a、4 输入给变量 b、5 输入给变量 a 的语句是_。(分数:2.50)A.scanf(“%d%f%lf“,a,b,c);B.scanf(“%d%lf%lf“,a,b,c);C.scanf(“%d%f%f“,a,b,c);D.s
3、canf(“%lf%lf%If“,a,b,c);3.以下能正确定义数组并正确赋初值的选项是_。(分数:1.00)A.int N =5,bNN;B.int a12 = 1, 3;C.int c2=1,2, 3,4;D.int d32=1,2, 3,4;4.若有以下程序: #include stdio.h void sp(int *a) int b=2; *a=*a*2; printf(“%d,“,*a); a= *a=*a*2; printf(“%d,“,*a); main( ) int k=3; sp( printf(“%d/n“,k); 则程序的输出结果是_。(分数:2.50)A.6,12,
4、12B.6,4,3C.6,4,6D.9,4,95.以下不能输出字符 A 的语句是_。(注:字符 A 的 ASCII 码值为 65,字符 a 的 ASCII 码值为 97。)(分数:1.00)A.printf(“%c/n“,“a“-32);B.printf(“%d/n“,“A“);C.printf(“%c/n“,65);D.printf(“%c/n“,“B“-1);6.若在定义语句:int a,b,c,*p=B.scanf(“%d%d%“, a, b, c);C.scanf(“%d“, p);D.scanf(“%d“, 7.假定 x 和 y 为 double 型,则表达式 x=2,y=x+3/2
5、 的值是_。(分数:1.00)A.3.500000B.3C.2.000000D.3.0000008.下列叙述中错误的是_。(分数:2.00)A.可以用 typedef 将已存在的类型用一个新的名字来代表B.可以通过 typedef 增加新的类型C.用 typedef 定义新的类型名后,原有类型名仍有效D.用 typedef 可以为各种类型起别名,但不能为变量起别名9.在满足实体完整性约束的条件下_。(分数:1.00)A.一个关系中应该有一个或多个候选关键字B.一个关系中只能有一个候选关键字C.一个关系中必须有多个候选关键字D.一个关系中可以没有候选关键字10.以下叙述中正确的是_。(分数:1.
6、00)A.两个字符串可以用关系运算符进行大小比较B.函数调用 strlen(s);会返回字符串 s 实际占用内存的大小(以字节为单位)C.C 语言本身没有提供对字符串进行整体操作的运算符D.当拼接两个字符串时,结果字符串占用的内存空间是两个原串占用空间的和11.有以下程序: #include stdio.h main( ) char s1 = “programe“, s2 = “Language“; char * p1 = s1, * p2 = s2; int k; for(k=0; k8; k+) if( * (p1+k) = * (p2+k) printf(“%s/n“, (p1+k);
7、程序的运行结果是_。(分数:1.00)A.grame ame eB.g a eC.programeD.无输出字符12.下列叙述中错误的是_。(分数:1.00)A.数据结构中的数据元素不能是另一数据结构B.数据结构中的数据元素可以是另一数据结构C.空数据结构可以是线性结构也可以是非线性结构D.非空数据结构可以没有根结点13.有以下程序: #includestdio.h struct tt int x; struct tt *y; s2=1,0,2,0; main() struct tt *p=s; p-y=s; printf(“%d“,+p-x); 程序运行后的输出结果是_。(分数:1.00)A
8、.2B.0C.1D.314.当变量 c 的值不为 2、4、6 时,值也为“真“的表达式是_。(分数:1.00)A.(c=2 以下叙述中正确的是_。(分数:2.50)A.此 while 语句将无限循环B.getchar()不可以出现在 while 语句的条件表达式中C.当执行此 while 语句时,只有按回车键程序才能继续执行D.当执行此 while 语句时,按任意键程序就能继续执行18.某二叉树的前序序列为 ABCDEFG,中序序列为 DCBAEFG,则该二叉树的后序序列为_。(分数:1.00)A.EFGDCBAB.DCBEFGAC.BCDGFEAD.DCBGFEA19.以下叙述中正确的是_。
9、(分数:2.00)A.C 程序书写格式自由,一个语句可以写在多行上B.C 程序书写格式严格,要求一行内只能写一个语句C.C 程序中的注释只能出现在程序的开始位置和语句的后面D.用 C 语言编写的程序只能放在一个程序文件中20.以下程序的输出结果是_。 #include stdio.h int d=1; fun(int p) static int d=5; d+=p; printf(“% d“, d); return (d); main() int a=3; printf(“% d/n“, fun(a+fun(d); (分数:1.00)A.699B.669C.61515D.661521.下列选项
10、中不属于结构化程序设计方法的是 _ 。(分数:2.00)A.自顶向下B.逐步求精C.模块化D.可复用22.有以下程序: #includestdio.h main() int a4,p,x,i; for(i=3;i0;i-)ai-1=i*2-1; scanf(“%d“, i=0; while(aix)i+; p=i; for(i=3;ip;i-)ai=ai-1; ap=x; for(i=0;i4;i+)printf(“%3d“,ai); printf(“/n“); 执行时输入:2回车,则输出结果是_。(分数:1.00)A.1 2 3 4B.5 4 3 1C.1 2 3 5D.3 2 1 423.
11、下面程序的输出是_。 main() int x=3,y=6,a=0; while(x+!=(y-=1) a+=1 if(yx)break; printf(“x=%d,y=%d,=%d/n“,x,y,a); (分数:2.00)A.x=4,y=4,a=1B.x=5,y=5,a=1C.x=5,y=4,a=3D.x=5,y=4,a=124.若有下列语句: char a=“xyz“; char b=“x“,“y“,“z“; 则下列叙述正确的是_。(分数:1.00)A.数组 a 和数组 b 不等价B.数组 a 和数组 b 的长度相同C.数组 a 占用空间大小等于数组 b 占用空间大小D.数组 a 占用空间
12、大小大于数组 b 占用空间大小25.以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是 _ 。(分数:2.00)A.char s10=“abcdefg“;B.char t=“abcdefg“,*s=t;C.char s10;s=“abcdefg“;D.char s10;strcpy(s,“abcdefg“);26.执行下述程序时,若从键盘输入 6 和 8,结果为_。 main() int a,b,s; scanf(“%d%d“, s=a; if(s=b)s*=s; printf(“%d“,s);(分数:2.50)A.36B.64C.48D.以上都不对27.有以下程序: #include
13、stdio.h main() int a5=2,4,6,8,10,*p,* *k; p=a;k=p; pnntf(“%d“,(p+); printf(|%d/n“,* *k); 程序运行后的输出结果是_。(分数:1.00)A.4 6B.4 4C.2 2D.2 428.软件详细设计产生的图如右图所示: (分数:1.00)A.N-S 图B.PADC.程序流程图D.E-R 图29.设计软件结构是软件生命周期的_。(分数:2.50)A.软件定义期B.软件开发期C.软件维护期D.以上 3 个都不是30.在用 fopen 函数打开一个已经存在的数据文件 abc 时,若要求既可以读出 abe 文件中原来的内
14、容,也可以用新的数据覆盖文件原来的数据,则调用 fopen 函数时,使用的存取方式参数应当是_。(分数:2.00)ArBaCr+Dw31.某二叉树共有 845 个节点,其中叶子节点有 45 个,则度为 1 的节点数为_。(分数:1.00)A.400B.754C.756D.不确定32.有以下程序: #includestdio.h main() int i,sum; for(i=1;i6;i+)sum+=i; printf(“%d/n“,sum); 程序运行后的输出结果是_。(分数:1.00)A.随机值B.0C.15D.1633.以下叙述正确的是_。(分数:1.00)A.C 语言程序是由过程和函数
15、组成的B.C 语言函数可以嵌套调用,例如:fun(fun(x)C.C 语言函数不可以单独编译D.C 语言中除了 main 函数,其他函数不可作为单独文件形式存在34.下面程序的输出结果是_。 #includestdio.h main() char a=“a“,“b“,“c“,“d“,“f“,“g“,*p; p=a; printf(“%c/n“,*p+4); (分数:2.50)AaBbCeDf35.有以下程序: #includestdio.h main() int i,j,m=55; for(i=1;i=3;i+) for(j=3;j=i;j+)m=m%j; printf(“%d/n“,m);
16、程序运行后的输出结果是_。(分数:1.00)AOBlC.2D.3二级 C 语言分类模拟题 506 答案解析(总分:55.00,做题时间:90 分钟)一、选择题(总题数:35,分数:55.00)1.有以下程序: #includestdio.h struct S int n;int a20; void f(struct S*p) int i,j,t; for(i=0;ip-n-1;i+) for(j=i+1;jp-n;j+) if(p-aip-aj) t=p-ai; p-ai=p-aj; p-aj=t; main() int i; struct S s=10,2,3,1,6,8,7,5,4,10,
17、9; f( for(i=0;is.n;i+) printf(“%d,“,s.ai); 程序的运行结果是_。(分数:2.00)A.2,3,1,6,8,7,5,4,10,9,B.10,9,8,7,6,5,4,3,2,1,C.1,2,3,4,5,6,7,8,9,10, D.10,9,8,7,6,1,2,3,4,5,解析:解析 本题中子函数 f 的功能是对结构体变量 s 中第二个成员数组中的所有数据进行从小到大的冒泡排序,所以结果是 C 选项。2.若有定义 int a; float b; double c; 程序运行时输入: 3 4 5回车 能把值 3 输入给变量 a、4 输入给变量 b、5 输入给变
18、量 a 的语句是_。(分数:2.50)A.scanf(“%d%f%lf“,a,b,c); B.scanf(“%d%lf%lf“,a,b,c);C.scanf(“%d%f%f“,a,b,c);D.scanf(“%lf%lf%If“,a,b,c);解析:解析 int,float,double 对应的格式控制符分别为%d,%f,%lf,所以答案选择 A。3.以下能正确定义数组并正确赋初值的选项是_。(分数:1.00)A.int N =5,bNN;B.int a12 = 1, 3;C.int c2=1,2, 3,4;D.int d32=1,2, 3,4; 解析:解析 选项 A 中,数组的下标应为整型变
19、量;选项 B 的行下标应为 2;选项 C 的列下标不能省略。4.若有以下程序: #include stdio.h void sp(int *a) int b=2; *a=*a*2; printf(“%d,“,*a); a= *a=*a*2; printf(“%d,“,*a); main( ) int k=3; sp( printf(“%d/n“,k); 则程序的输出结果是_。(分数:2.50)A.6,12,12B.6,4,3C.6,4,6 D.9,4,9解析:解析 首先在主函数中给整型变量 k 赋值为 3,调用 sp 函数,将变量 k 的地址作为实参传递给形参指针变量 a;在 sp 函数中,*
20、a=*a*2;即结果为 6,由于指针变量 a 指向地址 k,所以 k 值此时也变成6,通过 printf()函数输出。整型变量 b 的地址赋给指针变量 a,再执行*a=*a+2;语句,即结果为 4,通过 printf()函数输出。返回主函数,输出 k 的值 6。因此 C 选项正确。5.以下不能输出字符 A 的语句是_。(注:字符 A 的 ASCII 码值为 65,字符 a 的 ASCII 码值为 97。)(分数:1.00)A.printf(“%c/n“,“a“-32);B.printf(“%d/n“,“A“); C.printf(“%c/n“,65);D.printf(“%c/n“,“B“-1
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 分类 模拟 506 答案 解析 DOC
