【计算机类职业资格】二级C语言笔试93及答案解析.doc
《【计算机类职业资格】二级C语言笔试93及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试93及答案解析.doc(22页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试 93 及答案解析(总分:98.00,做题时间:90 分钟)一、B选择题/B(总题数:50,分数:60.00)1.设有如下说明: typedef struct ST long a;int b;char c2; NEW; 则下面叙述中正确的是( )。(分数:2.00)A.以上的说明形式非法B.ST 是一个结构体类型C.NEW 是一个结构体类型D.NEW 是一个结构体变量2.有以下程序: main() int x=1,3,5,7,2,4,6,0,i,j,k; for(i=0;i3;i+) for(j=2;j=i;j-) if(xj+1xj) k=xj; xj=xj+1; xj+1
2、=k; for(i=0;i3;i+) for(j=4;j7-i;j+) if(xjxj+1) k=xj; xj=xj+1; xj+1=k; for(i=0;i8;i+) printf(“%d“,xi); printf(“/n“); 程序运行后的输出结果是( )。(分数:2.00)A.75310246B.01234567C.76310462D.135702463.在面向对象的程序设计中,下列叙述中错误的是( )。(分数:2.00)A.对象是面向对象软件的基本模块B.对象不是独立存在的实体,各个对象之间有关联,彼此依赖C.下一层次的对象可以继承上层次对象的某些属性D.同样的消息被不同对象接受时,可
3、导致完全不同的行动4.有以下程序: void change(int k)k0=k5; main() int x10=(1,2,3,4,5,6,7,8,9,10,n=0; while(n=4) change(n+; for(n=0;n5;n+) printf(“%d“,xn); printf(“/n“); 程序运行后输出的结果是( )。(分数:2.00)A.6 7 8 9 10B.1 3 5 7 9C.1 2 3 4 5D.6 2 3 4 55.有以下程序: #include stdio.h main() char c1,c2,c3,c4,c5,c6; scanf(%c%c%c%c, c5=ge
4、tchar(); c6=getchar(); putchar(c1); putchar(c2); printf(%c%c/n,c5,c6); 程序运行后,若从键盘输入(从第 1 列开始) 123回车 45678回车 则输出结果是( )。(分数:2.00)A.1267B.1256C.1278D.12456.设有以下定义: union data int d1; float d2; demo; 则下面叙述中错误的是( )。(分数:2.00)A.变量 demo 与成员 d2 所占的内存字节数相同B.变量 demo 中各成员的地址相同C.变量 demo 和各成员的地址相同D.若给 demd1 赋 99
5、后,demd2 中的值是 99.07.冒泡排序在最坏情况下的比较次数是( )。(分数:2.00)A.n(n+1)/2B.nlog2nC.n(n-1)/2D.n/28.以下选项中,值为 1 的表达式是( )。(分数:2.00)A.1-0B.1-/0C.1-0D./0-09.有以下程序: int a=4; int f(int n) int t=0; static int a=5; if(n%2) int a=6; t+=a+; else int a=7; t+=a+; return t+a+; main() int s=a,i=0; for(;i2; i+) s+=f(i); printf(“%d
6、/n“,s); 程序运行后的输出结果是( )。(分数:2.00)A.24B.28C.32D.3610.程序设计方法要求在程序设计过程中,( )。(分数:2.00)A.先编制出程序,经调试使程序运行结果正确后再画出程序的流程图B.先编制出程序,经调试使程序运行结果正确后再在程序中的适当位置处加注释C.先画出流程图,再根据流程图编制出程序,最后经调试使程序运行结果正确后再在程序中的适当位置处加注释D.以上 3 种说法都不对11.以下叙述中错误的是( )。(分数:1.00)A.C 语言中对二进制文件的访问速度比文本文件快B.C 语言中,随机文件以二进制代码形式存储数据C.语句 FILE fp;定义了
7、一个名为 fp 的文件指针D.C 语言中的文本文件以 ASCII 码形式存储数据12.若有如下程序段,其中 s、a、b、c 均已定义为整型变量,且 a、c 均已赋值(c 大于 0) s=a; for(b=1;b=c;b+)s=s+1; 则与上述程序段功能等价的赋值语句是( )。(分数:1.00)A.s=a+b;B.s=a+c;C.s=s+c;D.s=b+c;13.以下程序中函数 sort 的功能是对 a 所指数组中的数据进行由大到小的排序; void sort(int a,int n) int i,j,t; for(i=0;in-1;i+) for(j=i+1,jn;j+) if(aiaj)
8、t=ai;ai=aj;aj=t; main() int aa10=1,2,3,4,5,6,7,8,9,10,i; sort( for(i=0;i10;i+)print(“%d,“,aai); printf(/n“); 程序运行后的输出结果是( )。(分数:1.00)A.1,2,3,4,5,6,7,8,9,10B.10,9,8,7,6,5,4,3,2,1,C.1,2,3,8,7,6,5,4,9,10D.1,2,10,9,8,7,6,5,4,3,14.C 语言源程序名的后缀是( )。(分数:1.00)AexeBcCobjDcp15.有以下程序: main() char p=a,b,c,q=“abc
9、“; printf(“%d %d/n“,sizeof(p),sizeof(q); 程序运行后的输出结果是( )。(分数:1.00)A.4 4B.3 3C.3 4D.4 316.有以下程序; void ss(char *s,char t) while(*s) if(*s=t) *s=t-a+A; s+; main() char str1100=“abcddfefdbd“,c=d; ss(str1,c);printf(“%s/n“,str1); 程序运行后的输出结果是( )。(分数:1.00)A.ABCDDEFEDBDB.abeDDfefDbDC.abcAAfefAbAD.Abcddfefdbd1
10、7.有以下程序,其中%u 表示按无符号整数输出: main() unsigned int x=0xFFFF; /*x 的初值为十六进制数*/ printf(“%u/n“,x); 程序运行后的输出结果是( )。(分数:1.00)A.-1B.65535C.32767D.0xFFFF18.有以下程序: #include string.h main() char p=a,b,c,q10=a,b,c; printf(“%d %d/n“,strlen(p),strlen(q); 以下叙述中正确的是( )。(分数:1.00)A.在给 p 和 q 数组置初值时,系统会自动添加字符串结束符,故输出的长度都为 3
11、B.由于 p 数组中没有字符串结束符,长度不能确定;但 q 数组中字符串长度为 3C.由于 q 数组中没有字符串结束符,长度不能确定;但 p 数组中字符串长度为 3D.由于 p 和 q 数组中都没有字符串结束符,故长度都不能确定19.有以下程序: main() char a,b,c,d; scanf(“%c,%c,%d,%d“, printf(“%c,%c,%c,%c/n“,a,b,c,d); 若运行时从键盘上输入:6,5,65,66回车。则输出结果是( )。(分数:1.00)A.6,5,A,BB.6,5,65,66C.6,5,6,5D.6,5,6,620.有以下程序: #include st
12、dio.h main() char c1=1,c2=2; c1=getchar(); c2=getchar(); putchar(c1); putchar(c2); 当运行时输入:a回车后,以下叙述正确的是( )。(分数:1.00)A.变量 c1 被赋予字符 a,c2 被赋予回车符B.程序将等待用户输入第 2 个字符C.变量 c1 被赋予字符 a,c2 中仍是原有字符 2D.变量 c1 被赋予字符 a,c2 中将无确定值21.有以下程序: main() char s=“/n123/“; printf(“%d,%d/n“,strlen(s),sizeof(s); 执行后输出结果是( )。(分数:
13、1.00)A.赋初值的字符串有错B.6,7C.5,6D.6,622.阅读以下函数: fun(char *s1,char *s2) int i=0; while(s1i=s2i return(s1i=/0 此函数的功能是( )。(分数:1.00)A.将 s2 所指字符串赋给 s1B.比较 s1 和 s2 所指字符串的大小,若 s1 比 s2 的大,函数值为 1,否则函数值为 0C.比较 s1 和 s2 所指字符串是否相等,若相等,函数值为 1,否则函数值为 0D.比较 s1 和 s2 所指字符串的长度,若 s1 比 s2 的长,函数值为 1,否则函数值为 023.有以下定义语句: double
14、a,b; int w; long c; 若各变量已正确赋值,则下列选项中正确的表达式是( )。(分数:1.00)A.a=a+b=b+B.w%(ina+C.(c+%(inaD.w=a=b24.以下选项中合法的实型常数是( )。(分数:1.00)A.5E2.0B.E-3C2E0D.1.3E26.若有定义语句:int a23,*p3;,则以下语句中正确的是( )。(分数:1.00)A.p=a;B.p0=a;C.p0=D.p1=27.若变量已正确定义,要求程序段完成求 5!的计算,不能完成此操作的程序段是( )。(分数:1.00)A.for(i=1,p=1;i=5;i+) p*=i;B.for(i=1
15、;i=5;i+) p=1; p*=i;C.i=1;p=1; while(i=5)p*=i; i+;D.i=1;p=1;dop*=i; i+; while(1=5)28.有以下程序: #include stdio.h stxuct tt int x;struct tt *y;*p; struct tt a4=20,a+1,15,a+2,30,a+3,17,a; main() int i; p=a; for(i=1;i=2;i+) printf(“%d,“,p-x ); p=p-y; 程序的运行结果是( )。(分数:1.00)A.20,30,B.30,17C.15,30,D.20,15,29.有以
16、下程序: main() int a=1,b=2,m=0,n=0,k; k=(n=ba)|(m=ab); printf(“%d,%d/n“,k,m); 程序运行后的输出结果是( )。(分数:1.00)A.0,0B.0,1C.1,0D.1,130.有以下程序: #include string.h void f(char p10,int n)/* 字符串从小到大排序 */ char t10; int i,j; for(i=0;in-1;i+) for(j=i+1;jn;j+) if(strcmp(pi,pj)0) strcpy(t,pi); strcpy(pi,pj); strcpy(pj,t);
17、main() char p510=“abc“,“aabdog“,“abbd“,“dcdbe“,“cd“; f(p,5); printf(“%d/n“,strlen(p0); 程序运行后的输出结果是( )。(分数:1.00)A.2B.4C.6D.331.已有定义:char c;,程序前面已在命令行中包含 ctype.h 文件。不能用于判断 c 中的字符是否为大写字母的表达式是( )。(分数:1.00)A.isupper(B.A=c=ZC.A=c 程序运行后的输出结果是( )。(分数:1.00)A.0B.1C.-1D.NULL 没定义,出错36.对于长度为 n 的线性表,在最坏情况下,下列各排序法
18、所对应的比较次数中正确的是( )。(分数:1.00)A.冒泡排序为 n/2B.冒泡排序为 nC.快速排序为 nD.快速排序为 n(n-1)/237.在面向对象方法中,实现信息隐蔽是依靠( )。(分数:1.00)A.对象的继承B.对象的多态C.对象的封装D.对象的分类38.以下叙述中正确的是( )。(分数:1.00)A.全局变量的作用域一定比局部变量的作用域范围大B.静态(stati 类别变量的生存期贯穿于整个程序的运行期间C.函数的形参都属于全局变量D.未在定义语句中赋初值的 auto 变量和 static 变量的初值都是随机值39.若有说明语句:int a,b,c,*d=,则能正确从键盘读入
19、 3 个整数分别赋给变量 a、b、c 的语句是( )。(分数:1.00)A.scanf(“%d%d%d“,B.scanf(“%d%d%d“,C.scanf(“%d%d%d“,a,b,;D.scanf(“%d%d%d“,a,b,*;41.以下 4 个程序中,完全正确的是( )。(分数:1.00)A.#include stdih main(); /* programming */ printf(“programming!/n“);B.#include stdih main() /*/ programming /*/ printf(“programming!/n“);C.#include stdih
20、 main() /*/* programming */*/ printf(“programming!/n“);D.#include stdih main() /* programming */ printf(“programming!/n“);42.下列数据结构中,能用二分法进行查找的是( )。(分数:1.00)A.顺序存储的有序线性表B.线性链表C.二叉链表D.有序线性链表43.以下程序输出的结果是( )。 #include stdio.h main() int i=010,j=10; printf(“%d,%d/n:,+i,j-); (分数:1.00)A.11,10B.9,10C.010,
21、9D.10,944.有以下程序: fun(int x,int y) static int m=0, i=2; i+=m+1; m=i+x+y; return m; main() int j=1,m=1,k; k=fun(j,m); printf(“%d,“k); k=fun(j,m); printf(“%d/n“,k); 执行后的输出结果是( )。(分数:1.00)A.5,5B.5,11C.11,11D.11,545.下列实体的联系中,属于多对多联系的是( )。(分数:1.00)A.学生与课程B.学校与校长C.住院的病人与病床D.职工与工资46.设有定义:int n1=0,n2,*p=,以下赋
22、值语句中与 n2=n1;语句等价的是( )。(分数:1.00)A.*p=*q;B.p=q;C.*p=D.p=*q;47.设有以下语句: typedef struct TT char c; int a4;CIN; 则下面叙述中正确的是( )。(分数:1.00)A.可以用 TT 定义结构体变量B.TT 是 struct 类型的变量C.可以用 CIN 定义结构体变量D.CIN 是 struct TT 类型的变量48.有以下程序: #include stdlib.h main() char *p,*q; p=(char*)malloc(sizeof(char)*20);q=p; scanf(“%s%s
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 93 答案 解析 DOC
