【计算机类职业资格】计算机二级(C)32及答案解析.doc
《【计算机类职业资格】计算机二级(C)32及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】计算机二级(C)32及答案解析.doc(19页珍藏版)》请在麦多课文档分享上搜索。
1、计算机二级(C)32 及答案解析(总分:3040.00,做题时间:120 分钟)一、选择题(1-10 题每题 2 分,11-50 题(总题数:50,分数:3000.00)1.有以下程序 main() int i , t3=9,8,7,6,5,4,3,2,1; for(i=0;iA.7 5 3B.3 5 7C.3 6 9D.7 5 12.以下叙述中错误的是【 】。(分数:60.00)A.C 程序中的#include 和#define 行均不是 C 语句B.除逗号运算符外,赋值运算符的优先级最低C.C 程序中,j+;是赋值语句D.C 程序中,+、一、*、号是算术运算符,可用于整型和实型数的运算3.
2、以下选项中,与 k = n + +完全等价的表达式是( )。(分数:60.00)A.k=n,n=n+1B.n=n+1,k=nC.k=+nD.k+=n+14.有以下程序: #include main() int n,*P=NULL; *P= prinff(“Input n:“);scanf(“d“,i+) s+=aai1; printf(“%d/n“,s); 程序运行后的输出结果是( )。 (分数:60.00)A.11B.19C.13D.206.以下能正确定义一维数组的选项是【 】。(分数:60.00)A.int a5=0,1,2,3,4,5;B.char a=0,1,2,3,4,5;C.cha
3、r a=A,B,C;D.int a5=“0123“;7.下列函数定义中,会出现编译错误的是( )。(分数:60.00)A.max(int x,int y,int *z) *z=xy ? x:y; B.int max(int x,y) int z; z=xy ? x:y; return z; C.max(int x,int y) int z; z=xy?x:y; return(z); D.int max(int x,int y) return(xy?x:y); 8.以下程序的功能是按顺序读入 10 名学生 4 门课程的成绩,计算出每位学生的平均分并输出,程序如下:main( ) int n,k;
4、 float score,sum,ave; sum=0.0; for(n=1;n=10;n+) for(k=1;k=4;k+) scanf(“%f“,score);sum+=score; ave=sum/4.0; printf(“NO%d:%f/n“,n,ave); 上述程序运行后结果不正确,调试中发现有条语句出现在程序中的位置不正确。这条语句是( )。 (分数:60.00)A.sum=0.0;B.sum+=score;C.ave=sum/4.0;D.printf(“NO%d:%f/n“,n,ave);9.程序中已构成如下图所示的不带头结点的单向链表结构,指针变量 s、p、q 均已正确定义,并
5、用于指向链表结点,指针变量 S 总是作为头指针指向链表的第一个结点。 (分数:60.00)A.首结点成为尾结点B.尾结点成为首结点C.删除首结点D.删除尾结点10.要求通过 while 循环不断读入字符,当读入字母 N 时结束循环。若变量已正确定义,以下正确的程序段是【 】。(分数:60.00)A.while(ch=getchar()!=N)printf(“C“,ch);B.while(ch=getchar()!=N)printf(“C“,ch);C.while(ch=getchar()=N)printf(“C“,ch).D.while(ch=getchar()=N)printf(“C“,ch
6、);11.已定义以下函数 int fun(int*P) return*p;) fun 函数返回值是【 】。 (分数:60.00)A.不确定的值B.一个整数C.形参 P 中存放的值D.形参 P 的地址值12.有以下程序: #include stdio.h main() char c1=1,c2=2; c1=getchar();c2=getchar();putchar(c1);putchar(c2); 当运行时输入 a回车后,以下叙述正确的是【 】。 (分数:60.00)A.变量 c1 被赋予字符 a,c2 被赋予回车符B.程序将等待用户输入第 2 个字符C.变量 c1 被赋予字符 a,c2 中仍
7、是原有字符 2D.变量 c1 被赋予字符 a,c2 中将无确定值13.有以下程序 main( ) char a,b,c,*d; a=/; b=/xbc; c=/0xab; d=“/0127“; printf(“%c%c%c%c/n“,a,b,c,*d); 编译时出现错误,以下叙述中正确的是( )。 (分数:60.00)A.程序中只有 a=/;语句不正确B.b=/xbc;语句不正确C.d=“/0127“;语句不正确D.a=/;和 c=/0xab;语句都不正确14.有定义语句:int x, y;,若要通过 scanf(“%d,%d“,语句使变量 x 得到数值 11,变量 y 得到数值 12,下面四
8、组输入形式中,错误的是( )。(分数:60.00)A.11 12B.11, 12C.11,12D.11,1215.设有定义:int a;float b;执行 scanf(“2df“, unsigned char c; ul; ul.c=A; printf(“%c/n“,ul.n); 执行后输出结果是( )。 (分数:60.00)A.产生语法错B.随机值C.AD.6517.以下关于逻辑运算符两侧运算对象的叙述中正确的是【 】。(分数:60.00)A.只能是整数 0 或 1B.只能是整数 0 或非 0 整数C.可以是结构体类型的数据D.可以是任意合法的表达式18.有以下程序: int fa(int
9、 x) return x *x; int fb(int x) return x *x *x; int f(int( *f1)( ),int( *f2)( ),int x) return f2(x)-f1(x); main( ) int i; i=f(fa,fb,2);printf(“%d/n“,i); 程序运行后的输出结果是( )。 (分数:60.00)A.-4B.1C.4D.819.有以下程序 int f1 (int x,inty)return xy?x:y; int f2(int x,int y)return xy?y:x; main() int a=4,b=3,c=5,d=2,e,f,g
10、; e=f2(f1(a,b),f1(c,d);f=f1(f2(a,b),f2(c,d); g=a+b+c+d-e-f; pintf(“%d,%d,%d/n“,e,f,g); 程序运行后的输出结果是【 】。(分数:60.00)A.4,3,7B.3,4,7C.52,7D.2,5,7A.p-nextB.pC.sD.s-next21.有以下程序 void change(int k)k0=k5; main() int x10=l,2,3,4,5,6,7,8,9,10,n=0; while(na ip-aj)t=p-ai;p-ai=p-aj;P-aj=t; maln() int i;struct S s=
11、10,2,3,l,6,8,7,5,4,10,9; f( print(“%c,“,+a); printf(“%c/n“,b=a+); 程序运行后的输出结果是( )。 (分数:60.00)A.b,bB.b,cC.a,bD.a,c38.第 4850 题基于以下信息。以下程序的功能是:建立一个带有头结点的单向链表,并将存储在数组中的字符依次转储到链表的各个结点中,请从与下划线处号码对应的一组选若中选择出正确的选项。 #include stuct node char data; struct node *next; (48) CreatList(char *s) struct node *h,*p,*q
12、); h=(struct node *)malloc(sizeof(struct node); p=q=h; while(*s!=/0) p=(struct node *)malloc(sizeof(struct node); p-data= (49) ; q-next=p; q= (50) ; s+; p-next=/0; return h; main( ) char str =“link list“; struct node *head; head=CreatList(str); . (分数:60.00)A.char *B.struct nodeC.struct node*D.char39
13、.对长度为 n 的线性表进行顺序查找,在最坏情况下所需要的比较次数为【 】。(分数:60.00)A.log2nB.n/2C.nD.n+140.有以下程序 main( ) int k=4,n=0; for( ; nk ; ) n+; if(n%3!=0) continue; k-; printf(“%d,%d/n“,k,n); 程序运行后的输出结果是( )。 (分数:60.00)A.1,1B.2,2C.3,3D.4,441.以下 4 个选项中,不能看作一条语句的是( )。(分数:60.00)A.;B.a=0,b=0,c=0;C.if(a0);D.if(b=0) m=1;n=2;42.下列叙述中正
14、确的是【 】。(分数:60.00)A.软件交付使用后还需要进行维护B.软件一旦交付使用就不需要再进行维护C.软件交付使用后其生命周期就结束D.软件维护是指修复程序中被破坏的指令43.用树形结构表示实体之间联系的模型是【 】。(分数:60.00)A.关系模型B.网状模型C.层次模型D.以上三个都是44.有以下程序: void swapl(int c0,int c1) int t; t=c00; c00=c10;c10=t; void swap2(int *c0,iht *c1) int t; t=*c0; *c0=*c1; *c1=t; main() int a2=3,5,b2=3,5; swa
15、pl(a,a+1); swap2(,以下 C 语言表达式与代数式 1/2(a+b) 计算结果不相符的是( )。(分数:60.00)A.(a+b)*h/2B.(1/2)*(a+b)*hC.(a+b)*h*1/2D.h/2*(a+b)46.有以下程序: void swap1(int c ) int t; t=c0;c0=c1;c1=t; void swap2(int c0,int c1) int t; t=c0;c0=c1;c1=t; main( ) int a2=3,5,b2=3,5; swap1(a); swap2(b0,b1); printf(“%d %d %d %d/n”,a0,a1,b0
16、,b1); 其输出结果是( )。 (分数:60.00)A.5 3 5 3B.5 3 3 5C.3 5 3 5D.3 5 5 347.有以下程序段 int a10=1,2,3,4,5,6,7,8,9,10,*p= b=p5; b 中的值是( )。 (分数:60.00)A.5B.6C.8D.948.已定义以下函数: fun(char *p2, char *p1) while(*p2=*p1)!=/0) p1+;p2+; 此函数的功能是( )。 (分数:60.00)A.将 p1 所指字符串复制到 p2 所指内存空间B.将 p1 所指字符串的地址赋给指针 p2C.对 p1 和 p2 两个指针所指字符串
17、进行比较D.检查 p1 和 p2 两个指针所指字符串中是否有/049.以下选项中非法的表达式是( )。(分数:60.00)A.0b)a-=b; while(ba)b-=a; printf(“3d3dn“,a,b); (分数:2.00)填空项 1:_54.下面程序的功能是:将 N 行 N 列二维数组中每一行的元素进行排序,第 0 行从小到大排序,第 1 行从大到小排序,第 2 行从小到大排序,第 3 行从大到小排序,例如: (分数:2.00)填空项 1:_填空项 1:_55.在 Windows 环境下,利用菜单命令删除固定硬盘上的文件与文件夹,实际上是将需要删除的文件与文件夹移动到 1 文件夹中
18、。(分数:2.00)填空项 1:_56.执行以下程序后的输出结果是 1。 main2 int a=10; a=(3*5,a+4);printf(“a=dn“,a); (分数:2.00)填空项 1:_57.计算机软件分为系统软件与应用软件,UNIX 属于 1。(分数:2.00)填空项 1:_58.以下程序运行后的输出结果是 1。 main2 int a=1,b=2,c=3; if(c=a) ,printf(“%d/n“,c) ; else printf(“%d/n“,b) ; (分数:2.00)填空项 1:_59.以下程序运行后的输出结果是 1。 #includestring.h main2 c
19、har ch=“abc“,x34;int i; for(i=0;i3;1+)strcpy(xi,ch); for(i=0;i3;i+)printf(“%s“, char str40; fgets(str,5,fr); printf(“%s/n“,str); fclose(fr); (分数:2.00)填空项 1:_64.假设在当前盘的当前目录下有两个文件 A.TXT 和 B.TXT,现要将文件 B.TXT 合并连接到文件 A.TXT 的后面。若使用 TYPE 命令,则完整的命令为 1。(分数:2.00)填空项 1:_65.以下程序的运行结果是 1。 main2 int a=2,b=7,c=5;
20、switch(aO) case 1:switch(b填空项 1:_66.有以下程序 void f( int y,int *x) y=y+*x; *x=*x+y; main( ) int x=2,y=4; f(y, printf(“%d %d/n”,x,y); 执行后输出的结果是 1。 (分数:2.00)填空项 1:_67.软件测试分为白箱(盒)测试和黑箱(盒)测试。等价类划分法属于 1 测试。(分数:2.00)填空项 1:_68.以下程序运行后的输出结果是 1。 main( ) int a 44=1,2,3,4,5,6,7,8,11,12,13,14,15,16,17,18; int i=0,
21、j=0,s=0; while(i+4) if(i=2|i=4) continue; j=0; do s+= aj; j+; while(j4); printf(“%d/n“,s); (分数:2.00)填空项 1:_69.已知字符 A 的 ACSII 码值为 65,以下语句的输出结果是 1。 char ch=B; printf(“%c %d/n”,ch,ch); (分数:2.00)填空项 1:_70.以下程序的功能是:输出 100 以内(不含 100)能被 3 整除且个位数为 6 的所有整数,请填空。 main1 (int i,j; for(i=0; 2;i+) j=i*10+6; if( 3)
22、continue; printf(“d“,j); (分数:2.00)填空项 1:_计算机二级(C)32 答案解析(总分:3040.00,做题时间:120 分钟)一、选择题(1-10 题每题 2 分,11-50 题(总题数:50,分数:3000.00)1.有以下程序 main() int i , t3=9,8,7,6,5,4,3,2,1; for(i=0;iA.7 5 3B.3 5 7 C.3 6 9D.7 5 1解析:本题考查多维数组的初始化。使用一个大括号初始化多维数组时,初始化原则为先列后行,即初始化完第一行的所有列后再初始化下一行的元素。程序输出 t20、t11、t02,它们 的值分别为
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 C32 答案 解析 DOC
