【计算机类职业资格】二级C语言-72及答案解析.doc
《【计算机类职业资格】二级C语言-72及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言-72及答案解析.doc(32页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言-72 及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:40,分数:40.00)1.一个栈的初始状态为空。现将元素 1、2、3、4、5、A、B、C、D、E 依次入栈,然后再依次出栈,则元素出栈的顺序是_。 A.12345ABCDE B.EDCBA54321 C.ABCDE12345 D.54321EDCBA(分数:1.00)A.B.C.D.2.下列叙述中正确的是_。 A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构 B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况 C.在循环队列中,只需要队尾指针就能反映队列中元素的动态
2、变化情况 D.循环队列中元素的个数由队头指针和队尾指针共同决定(分数:1.00)A.B.C.D.3.在长度为 n 的有序线性表中进行二分法查找,最坏情况下需要比较的次数是_。 A.O(n) B.O(n2) C.O(log2n) D.O(nlog2n)(分数:1.00)A.B.C.D.4.下列叙述中正确的是_。 A.顺序存储结构的存储空间一定是连续的,链式存储结构的存储空间不一定是连续的 B.顺序存储结构只针对线性结构,链式存储结构只针对非线性结构 C.顺序存储结构能存储有序表,链式存储结构不能存储有序表 D.链式存储结构比顺序存储结构节省存储空间(分数:1.00)A.B.C.D.5.数据流图中
3、带有箭头的线段表示的是_。 A.控制流 B.事件驱动 C.模块调用 D.数据流(分数:1.00)A.B.C.D.6.在软件开发中,需求分析阶段可以使用的工具是_。 A.N-S 图 B.DFD 图 C.PAD 图 D.程序流程图(分数:1.00)A.B.C.D.7.在面向对象方法中,不属于“对象”基本特点的是_。 A.一致性 B.分类性 C.多态性 D.标识唯一性(分数:1.00)A.B.C.D.8.一间宿舍可住多名学生,则实体宿舍和学生之间的联系是_。 A.一对一 B.一对多 C.多对一 D.多对多(分数:1.00)A.B.C.D.9.在数据管理技术发展的三个阶段中,数据共享最好的是_。 A.
4、人工管理阶段 B.文件系统阶段 C.数据库系统阶段 D.三个阶段相同(分数:1.00)A.B.C.D.10.有三个关系 R、S 和 T 如下: RA Bm 1n 2SB C1 33 5TA B Cm 1 3由关系 R 和 S 通过运算得到关系 T,则所使用的运算为_。 A.笛卡儿积 B.交 C.并 D.自然连接(分数:1.00)A.B.C.D.11.以下叙述中错误的是_。 A.使用三种基本结构构成的程序只能解决简单问题 B.结构化程序由顺序、分支、循环三种基本结构组成 C.C 语言是一种结构化程序设计语言 D.结构化程序设计提倡模块化的设计方法(分数:1.00)A.B.C.D.12.以下四个程
5、序中,完全正确的是_。 A.#include stdio.hmain(); /*/programming/*/printf(“programming!/n“); B.#include main() /*programming*/printf(“programming!/n“); C.#include stdio.hmain() /*/*programming*/*/ printf(“programming!/n“); D.include main() /*programming*/printf(“programming!/n“);(分数:1.00)A.B.C.D.13.C 源程序中不能表示的数
6、制是_。 A.十进制 B.八进制 C.二进制 D.十六进制(分数:1.00)A.B.C.D.14.以下选项中,能用作用户标识符的是_。 A._0_ B.8_8 C.void D.unsigned(分数:1.00)A.B.C.D.15.若有定义语句“int x=10;”,则表达式“x-=x+x”的值为_。 A.10 B.-20 C.0 D.-10(分数:1.00)A.B.C.D.16.有以下程序#include stdio.hmain() int a=1,b=0;printf(“%d,“,b=a+b);printf(“%d/n“,a=2*b);程序运行后的输出结果是_。 A.1,2 B.1,0
7、C.3,2 D.0,0(分数:1.00)A.B.C.D.17.有以下程序#include stdio.hmain() int a1,a2;char c1,c2;scanf(“%d%c%d%c“,printf(“%d,%c,%d,%c“,a1,c1,a2,c2);若想通过键盘输入,使得 a1 的值为 12,a2 的值为 34,c1 的值为字符 a,c2 的值为字符 b,程序输出结果是 12,a,34,b 则正确的输入格式是_(代表空格字符)。 A.12a34bCR B.12a34bCR C.12,a,34,bCR D.12a34bCR(分数:1.00)A.B.C.D.18.若变量已正确定义,在“
8、if(W)printf(“%d/n“,k);”中,以下不可替代 W 的是_。 A.a=b+c B.ch=getchar() C.ab+c D.a+(分数:1.00)A.B.C.D.19.有以下程序段#include stdio.hmain()int a,b,c;a=10; b=50; c=30;if(ab)a=b, b=c; c=a;printf(“a=%d b=%d c=%d/n“,a,b,c);程序的输出结果是_。 A.a=10 b=50 c=10 B.a=10 b=50 c=30 C.a=10 b=30 c=10 D.a=50 b=30 c=50(分数:1.00)A.B.C.D.20.下
9、列叙述中正确的是_。 A.在 switch 语句中,不一定使用 break 语句 B.在 switch 语句中,必须使用 default C.break 语句必须与 switch 语句中的 case 配对使用 D.break 语句只能用于 switch 语句(分数:1.00)A.B.C.D.21.以下不构成无限循环的语句或语句组是_。 A.n=0; while1n+; B.n=0;do +n; while(n=0); C.n=10; while(n); n-; D.for(n=0,i=1; ;i+)n+=i;(分数:1.00)A.B.C.D.22.有以下程序#include stdio.hma
10、in() int c=0,k;for(k=1;k3;k+)switch(k) default: c+=k;case 2: c+;break;case 4: c+=2;break;printf(“%d/n“,c);程序运行后的输出结果是_。 A.3 B.5 C.7 D.9(分数:1.00)A.B.C.D.23.有以下程序#include stdio.hint f(int x,int y) return(y-x)*x);main() int a=3,b=4,c=5,d;d=f(f(a,b),f(a,c);printf(“%d/n“,d);程序运行后的输出结果是_。 A.8 B.10 C.9 D.7
11、(分数:1.00)A.B.C.D.24.若有定义语句“double a,*p=”,以下叙述中错误的是_。 A.定义语句中,“*p=”,执行了“px=py=”之后,正确的输入语句是_。 A.scanf(“%lf%le“,px,py); B.scanf(“%f%f“ C.scanf(“%f%f“,x,y); D.scanf(“%lf%lf“,x,y);(分数:1.00)A.B.C.D.26.以下定义数组的语句中错误的是_。 A.int num=(1,2,3,4,5,6; B.int num3=1,2),3,4,5,6; C.int num24=1,2,3,4,5,6; D.int num4=1,2
12、,3,4,5,6;(分数:1.00)A.B.C.D.27.有以下程序#include stdio.hvoid fun(int a,int b) int t;t=a; a=b; b=t;main() int c10=1,2,3,4,5,6,7,8,9,0,i;for(i=0;i10;i+=2) fun(ci,ci+1);for(i=0;i10;i+) printf(“%d,“,ci);printf(“/n“);程序的运行结果是_。 A.1,2,3,4,5,6,7,8,9,0, B.2,1,4,3,6,5,8,7,0,9, C.0,9,8,7,6,5,4,3,2,1, D.0,1,2,3,4,5,
13、6,7,8,9,(分数:1.00)A.B.C.D.28.有以下程序#include stdio.hmain() int x32=0,i;for(i=0;i3;i+) scanf(“%d“,xi);printf(“%3d%3d%3d/n“,x00,x01,x10);若运行时输入:2 4 6回车,则输出结果为_。 A.2 0 0 B.2 0 4 C.2 4 0 D.2 4 6(分数:1.00)A.B.C.D.29.有以下程序段#include stdio.hint j; float y; char name50;scanf(“%2d%f%s“,当执行上述程序段,从键盘上输入 55566 77771
14、23 后,y 的值为_。 A.566.0 B.55566.0 C.7777.0 D.566777.0(分数:1.00)A.B.C.D.30.下列语句组中,正确的是_。 A.char*s;s=“Olympic“; B.char s7;s=“Olympic“; C.char*s;s=“Olympic“; D.char s7;s=“Olympic“;(分数:1.00)A.B.C.D.31.有以下函数int fun(char *s) char *t=s;while(*t+);return(t-s);该函数的功能是_。 A.计算 s 所指字符串占用内存字节的个数 B.比较两个字符串的大小 C.计算 s
15、所指字符串的长度 D.将 s 所指字符串复制到字符串 t 中(分数:1.00)A.B.C.D.32.有以下程序(字符 a 的 ASCII 码值为 97)#include stdio.hmain() char *s=“abc“;do printf(“%d“,*s%10);+s;while(*s);程序运行后的输出结果是_。 A.abc B.789 C.7890 D.979899(分数:1.00)A.B.C.D.33.设有如下函数定义#include stdio.hint fun(int k if(k1) return 0;else if(k=1) return 1;else return fun
16、(k-1)+1;若执行调用语句“n=fun(3);”,则函数 fun 总共被调用的次数是_。 A.3 B.2 C.4 D.5(分数:1.00)A.B.C.D.34.有以下程序#include stdio.hint f(int n);main() int a=3,s;s=f(A);s=s+f(A);printf(“%d/n“,s);int f(int n) static int a=1;n+=a+;return n;程序运行后的输出结果是_。 A.9 B.8 C.7 D.10(分数:1.00)A.B.C.D.35.设有定义:struet complex int real,unreal; data
17、1=1,8,data2;则以下赋值语句中错误的是_。 A.data2.real=data1.unreal; B.data2=data1; C.data2.real=data1.real; D.data2=(2,6);(分数:1.00)A.B.C.D.36.有以下程序#include stdio.hstruct 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
18、s=10,2,3,1,6,8,7,5,4,10,9;f(for(i=0;is.n;i+) printf(“%d,“,s.ai);程序运行后的输出结果是_。 A.10,9,8,7,6,5,4,3,2,1, B.1,2,3,4,5,6,7,8,9,10, C.2,3,1,6,8,7,5,4,10,9, D.10,9,8,7,6,1,2,3,4,5,(分数:1.00)A.B.C.D.37.有以下程序#include stdio.h#include string.htypedef struct char name9; char sex; int score2; STU;STUf(STU A STU b
19、=“Zhao“,m,85,90;int i;strcpy(a.name,b.name);a.sex=b.sex;for(i=0;i2;i+) a.scorei=b.scorei;return a;main() STU c=“Qian“,f,95,92,d;d=f(c);printf(“%s,%c,%d,%d,“,d.name,d.sex,d.score0,d.score1);printf(“%s,%c,%d,%d/n“,c.name,c.sex,c.score0,c.score1);程序运行后的输出结果是_。 A.Zhao,m,85,90,Qian,f,95,92 B.Zhao,m,85,90
20、,Zhao,m,85,90 C.Qian,f,95,92,Qian,f,95,92 D.Qian,f,95,92,Zhao,m,85,90(分数:1.00)A.B.C.D.38.以下关于宏的叙述中正确的是_。 A.宏替换没有数据类型限制 B.宏定义必须位于源程序中所有语句之前 C.宏名必须用大写字母表示 D.宏调用比函数调用耗费时间(分数:1.00)A.B.C.D.39.设有以下语句int a=1,b=2,c;c=a(b2);执行后,c 的值为_。 A.8 B.7 C.9 D.6(分数:1.00)A.B.C.D.40.有以下程序#include stdio.hmain() FILE *fp;i
21、nt a10=1,2,3,i,n;fp=fopen(“d1.dat“,“w“);for(i=0;i3;i+) fprintf(fp,“%d“,ai);fprintf(fp,“/n“);fclose(fp);fp=fopen(“d1.dat“,“r“);fscanf(fp,“%d,fclose(fp);printf(“%d/n“,n);程序的运行结果是_。 A.123 B.12300 C.1 D.321(分数:1.00)A.B.C.D.二、B程序填空题/B(总题数:1,分数:20.00)41.给定程序中,函数 fun 的功能是:找出 100999 之间(含 100 和 999)所有整数中各位上数
22、字之和为x(x 为一正整数)的整数,然后输出;符合条件的整数个数作为函数值返回。 例如,当 x 值为 5 时,100999 之间各位上数字之和为 5 的整数有:104、113、122、131、140、203、212、221、230、302、311、320、401、410、500。共有 15 个。当 x 值为 27 时,各位数字之和为 27 的整数是 999。只有 1 个。 请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。 注意:源程序存放在下的 BLANK1.C 中。 不得增行或删行,也不得更改程序的结构! 给定源程序: #include stdio.h int fun(
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 72 答案 解析 DOC
