【计算机类职业资格】二级C语言分类模拟题535及答案解析.doc
《【计算机类职业资格】二级C语言分类模拟题535及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言分类模拟题535及答案解析.doc(19页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言分类模拟题 535 及答案解析(总分:48.50,做题时间:90 分钟)一、选择题(总题数:35,分数:48.50)1.有以下程序段: int x; for(x=3; x6; x+) printf(x%2)?(“*%d“): (“#%d/n“), x); 程序段的输出结果是(分数:2.00)A.*3#4*5B.#3*4#5C.#3*4#5.D.*3#4*52.设 x 和 y 都是 int 类型,且 x=1,y=2,则 printf(“%d%d“,x,y,(x,y)的输出结果是 _ 。(分数:1.00)A.1 2B.1 2 2C.1,2D.输出值不确定3.若有以下说明和定义: #i
2、ncludestdio.h main() int(*a)(int*), *b(), w10, c; int fun(int*c) 则以下选项中能正确调用 fun 函数是(分数:1.00)A.a=fun; a(w);B.a=fun; (*a)(C.b=fun; *b(w);D.fun(b);4.若变量已正确定义,在 if(W)printf(“%d/n“,k);中,以下不可替代 W 的是_。(分数:1.00)A.a=b+cB.ch=getchar()C.ab+cD.a+5.阅读以下程序: # includestdio.h main() int case; float printF; printf(
3、“请输入 2 个数:“); scanf(“%d%f“, case,printF); printf(“%d%f/n“,case,printF); 该程序在编译时产生错误,其出错原因是_。(分数:1.00)A.定义语句出错,case 是关键字,不能用作用户自定义标识符B.定义语句出错,printF 不能用作用户自定义标识符C.定义语句无错,scanf 不能作为输入函数使用D.定义语句无错,printf 不能输出 case 的值6.有以下程序: # include stdio.h main() char a,b,c; b=“1“;c=“A“; for(a=0;a6;a+) if(a%2) putch
4、ar(b+a); else putchar(c+a); 程序运行后的输出结果是_。(分数:1.00)A.1B3D5FB.ABCDEFC.A2C4E6D.1234567.下面对软件特点描述不正确的是_。(分数:1.00)A.软件是一种逻辑实体,具有抽象性B.软件开发、运行对计算机系统具有依赖性C.软件开发涉及软件知识产权、法律及心理等社会因素D.软件运行存在磨损和老化问题8.下列叙述中正确的是_。(分数:1.00)A.存储空间不连续的所有链表一定是非线性结构B.节点中有多个指针域的所有链表一定是非线性结构C.能顺序存储的数据结构一定是线性结构D.带链的栈与队列是线性结构9.设有宏定义: #def
5、ine IsDIV(k,n) (k%n= =1)?1 : 0) 且变量 m 已正确定义并赋值,则宏调用: IsDIV(m,5) t=*a;*a=*b;*b=t; tp=a;a=b;b=tp; printf(“%d,%d,“,*a,*b); main() int i=3,j=7,*p= swap(p,q); printf(“%d,%d,%d,%d“,i,j,*p,*q); 程序执行后的输出结果是_。(分数:1.00)A.3,7,3,7,3,7B.7,3,7,3,7,3C.3,7,3,7,7,3D.3,7,7,3,7,313.以下程序段给数组所有元素输入数据: #include stdio.h m
6、ain() int a10, i=0; while(i10) scanf(“%d“, _); 应在下划线处填入的是(分数:1.00)A.a+(i+)B. int age; char sex; std10, *p=std; 以下语句错误的是_。(分数:1.00)A.scanf(“%d“, p-age);B.scanf(“%s“,std0.name);C.scanf(“%d“,D.scanf(“%c“,15.若有以下程序段: char str412=“aaa“,“bbbb“,“ccccc“,“dddddd“,*strp4; int i; for(i=0;i4;i+)strpi=stri; 则以下错
7、误引用字符串的选项是(其中 0k4)_。(分数:1.00)A.*strpB.strkC.strpkD.strp16.有以下程序段: int j;float y;char name50; scanf(“%2d%f%s“, 当执行上述程序段,从键盘上输入 55566 7777abc 后,y 的值为_。(分数:2.00)A.55566.0B.566.0C.7777.0D.566777.017.程序流程图中带有箭头的线段表示的是_。(分数:1.00)A.图元关系B.数据流C.控制流D.调用关系18.已定义以下函数 int fun(int *P) return *P; fun 函数返回值是_。(分数:1
8、.00)A.一个整数B.不确定的值C.形参 p 中存放的值D.形参 p 的地址值19.软件测试的目的是_。(分数:2.50)A.评估软件可靠性B.发现并改正程序中的错误C.改正程序中的错误D.发现程序中的错误20.若有定义:float x=1.5;int a=1,b=3,c=2;,则正确的 switch 语句是_。(分数:2.50)A.switch(a+b)case 1:printf(“*/n“);case 2+1:printf(“*/n“);B.switch(int)x);case 1:printf(“*/n“);case 2:printf(“*/n“);C.switch(x)case 1.
9、0:printf(“*/n“);case 2.0:printf(“*/n“);D.switch(a+b)case 1:printf(“*/n“);case c:printf(“*/n“);21.下面程序的运行结果是_。 #includestdio.h void del(char*s) int i,j; char*a; a=s; for(i=0,j=0;ai!=“/0“;i+) if(ai=“0“ j+; sj=“/0“; main() char s=“aa89gggh“; del(s); printf(“/n%s“,s); (分数:2.00)A.aaB.89C.ggghD.aa89gggh22
10、.以下选项中表示一个合法的常量是(说明:符号表示空格)_。(分数:1.00)A.999B.0XabC.123E0.2D.2.7e23.有以下程序: #include #define S(x) (x)*x*2main() int k=5,j-2;printf(“%d,“,S(k+j);printf(“%d/n“,S(k-j);程序运行后的输出结果是 。 A.98,18 B.39,11 C.39,18 D.98,11A B C D C解析 由#define 的定义知,x 是在预编译阶段替换参数值,即第一个 s(k+j)替换成(k+j)*k+j*2,带入数值得 39;第二个 s(k-j)替换成(k-
11、j)*(k-j)*2,带入数值得 18。故选 C) 。(分数:2.00)A.98,18B.39,11C.39,18D.98,1124.若有以下程序段: int r=8; print(“%d/n“,r1); 输出结果是_。(分数:1.00)A.16B.8C.4D.225.有以下函数定义: void fun(int n, double x) 若以下选项中的变量都已正确定义并赋值,则对函数 fun 的正确调用语句是 _ 。(分数:1.00)A.fun(int y,double m);B.k=fun(10,12.5);C.fun(x,n);D.void fun(n,x);26.下列叙述中正确的是_。(
12、分数:1.00)A.存储空间连续的数据结构一定是线性结构B.存储空间不连续的数据结构一定是非线性结构C.没有根节点的非空数据结构一定是线性结构D.具有两个根节点的数据结构一定是非线性结构27.以下选项中,能够正确利用随机函数 rand(),产生一个英文字母的表达式是_。(分数:1.00)A.rand()%2=0?rand()%“A“:rand()%“a“B.rand()%26+“A“|rand()%26+“a“C.rand()%26+“A“ 以下选项中能够使 c 正确指向一个字符串的是_。(分数:1.00)A.char str=“string“;c=str;B.scanf(“%s“,c);C.
13、c=getchar();D.*c=“string“;30.C 语言中运算对象必须是整型的运算符是_。(分数:2.50)A.%B./C.!D.*31.在结构化分析方法中,数据字典的作用是_。(分数:2.50)A.存放所有需要处理的原始数据B.存放所有处理的结果C.存放所有程序文件D.描述系统中所用到的全部数据和文件的有关信息32.有以下程序: #includestdio.h main() char a30,b30; scanf(“%s“,a); gets(b); printf(“%s%s“,a,b); 程序运行时若输入: how are you? I am fine回车 则输出结果是_。(分数:
14、2.00)A.how are you?I am fineB.howare you? I am fineC.how are you? I am fineD.how are you?33.以下结构体类型说明和变量定义中正确的是_。(分数:2.00)A.typedef structint n;char c;REC;REC t1,t2;B.struct REC;int n;char c;);REC t1,t2;C.typedef struct REC;int n=0;char c=“A“;t1,t2;D.structint n;char c;REC;REC t1,t2;34.有下列程序: int fu
15、n(int x, int n) static int sum=0, i; for(i=0; in; i+) sum+=xi; return sum; main() int a=1, 2, 3, 4, 5, b=6, 7, 8, 9, s=0; s=fun(a, 5)+fun(b, 4); printf(“%d/n“, s); 程序执行后的输出结果是_。(分数:1.00)A.45B.50C.60D.5535.有以下程序: #include stdio.h main( ) chair ch=“B“; while (ch“E“) printf(“%d“, ch-“A“); ch+; printf(“
16、/n“); 程序运行后的输出结果是_。(分数:1.00)A.123B.ABCC.abcD.012二级 C 语言分类模拟题 535 答案解析(总分:48.50,做题时间:90 分钟)一、选择题(总题数:35,分数:48.50)1.有以下程序段: int x; for(x=3; x6; x+) printf(x%2)?(“*%d“): (“#%d/n“), x); 程序段的输出结果是(分数:2.00)A.*3#4*5B.#3*4#5C.#3*4#5.D.*3#4*5 解析:2.设 x 和 y 都是 int 类型,且 x=1,y=2,则 printf(“%d%d“,x,y,(x,y)的输出结果是 _
17、 。(分数:1.00)A.1 2 B.1 2 2C.1,2D.输出值不确定解析:解析 本题考查 printf 函数的格式和逗号表达式。printf 函数在输出时,是根据格式说明符的个数输出的,如果函数中有有多余的项将不予输出;如果有输出项少于格式说明符,则出错,不能输出正确的结果。 本题中逗号表达式(x,y)只返回 y 的值。此时格式说明的个数是 2,而输出项的个数是 3,因此 printf 函数只输出前两项。3.若有以下说明和定义: #includestdio.h main() int(*a)(int*), *b(), w10, c; int fun(int*c) 则以下选项中能正确调用 f
18、un 函数是(分数:1.00)A.a=fun; a(w);B.a=fun; (*a)( C.b=fun; *b(w);D.fun(b);解析:4.若变量已正确定义,在 if(W)printf(“%d/n“,k);中,以下不可替代 W 的是_。(分数:1.00)A.a=b+cB.ch=getchar()C.ab+c D.a+解析:解析 选项 C 是非法的表达式,C 语言中没有“”运算符。5.阅读以下程序: # includestdio.h main() int case; float printF; printf(“请输入 2 个数:“); scanf(“%d%f“, case,printF);
19、 printf(“%d%f/n“,case,printF); 该程序在编译时产生错误,其出错原因是_。(分数:1.00)A.定义语句出错,case 是关键字,不能用作用户自定义标识符 B.定义语句出错,printF 不能用作用户自定义标识符C.定义语句无错,scanf 不能作为输入函数使用D.定义语句无错,printf 不能输出 case 的值解析:解析 本题中定义了整形变量 case,但 case 是关键字,关键字不能用作标识符。单精度 printF不是关键字,因为标识符区分大小写。所以选项 A 不正确。6.有以下程序: # include stdio.h main() char a,b,c
20、; b=“1“;c=“A“; for(a=0;a6;a+) if(a%2) putchar(b+a); else putchar(c+a); 程序运行后的输出结果是_。(分数:1.00)A.1B3D5FB.ABCDEFC.A2C4E6 D.123456解析:解析 本题考查 putchar 输出语句,当 a=0 时,a%2=0,执行 else 语句,所以第一次输出 A;当a=1 时,a%2=1,执行 if 语句,所以第二次输出 2,依次类推,所以答案选择 C。7.下面对软件特点描述不正确的是_。(分数:1.00)A.软件是一种逻辑实体,具有抽象性B.软件开发、运行对计算机系统具有依赖性C.软件开
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 分类 模拟 535 答案 解析 DOC
