【计算机类职业资格】二级C语言-442及答案解析.doc
《【计算机类职业资格】二级C语言-442及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言-442及答案解析.doc(23页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言-442 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:48,分数:100.00)1.若有定义:int x10,*pt=x;,则对 x 数组元素的正确引用是_。(分数:2.00)A.pt+3B.* for(i=0;i9;i+=2) s+=*(t+i); printf(“%d/n“,s); 程序的运行结果是_。(分数:2.00)A.20B.25C.45D.363.有以下程序: #includestdio.h main() int s12=1,2,3,4,4,3,2,1,1,1,2,3,c5=0,i; for(i=0;i12;i+) csi+; for(i
2、=1;i5;i+) printf(“%d“,ci); printf(“/n“); 程序的运行结果是_。(分数:2.00)A.2 3 4 4B.4 3 3 2C.1 2 3 4D.1 1 2 34.下列定义数组的语句中正确的是_。(分数:2.00)A.#define N 10int xN;B.int N=10;int xN;C.int x010;D.int x;5.下列选项中能正确定义数组的语句是_。(分数:2.00)A.int num0.2008;B.int num;C.int N=2008;int numN;D.#define N 2008int numN;6.若要求定义具有 10 个 in
3、t 型元素的一维数组 a,则以下定义语句中错误的是_。(分数:2.00)A.#define n 5int a2*n;B.int n=10,an;C.int a5+5;D.#define N 10int aN;7.设有定义:double a10,*s=a;,以下能够代表数组元素 a3的是_。(分数:2.00)A.(*s)3B.*(s+3)C.*s3D.*s+38.有以下程序: #includestdio.h main() int i,t3=9,8,7,6,5,4,3,2,1; for(i=0;i3;i+) printf(“%d“,t2-ii); 程序的运行结果是_。(分数:2.00)A.3 5
4、7B.7 5 3C.3 6 9D.7 5 19.下列定义语句中错误的是_。(分数:2.00)A.int x43=1,2,3,1,2,3,1,2,3,1,2,3;B.int x4=1,2,3,1,2,3,1,2,3,1,2,3;C.int x3=0,1,1,2,3;D.int x3=1,2,3,4;10.下列定义数组的语句中错误的是_。(分数:2.00)A.int x23=1,2,3,4,5,6;B.int x3=0;C.int x3=1,2,3,4,5,6;D.int x23=1,2,3,4,5,6;11.下列定义数组的语句中错误的是_。(分数:2.00)A.int num3=1,2,3,4,
5、5,6;B.int num24=1,2,3,4,5,6;C.int num=1,2,3,4,5,6;D.int num4=1,2,3,4,5,6;12.若有定义语句:char s10=“1234567/0/0“;,则 strlen(s)的值是_。(分数:2.00)A.7B.8C.9D.1013.有以下程序: #includestdio.h #includestring.h main() char p20=“a“,“b“,“c“,“d“,q=“abc“,r=“abcde“; strcat(p,r); strcpy(p+strlen(q),q); printf(“%d/n“,strlen(p);
6、程序的运行结果是_。(分数:2.00)A.11B.9C.6D.714.有以下程序(strcat 函数用于连接两个字符串): #includestdio.h #includestring.h main() char a20=“ABCD/0EFG/0“,b=“IJK“; strcat(a,b); printf(“%s/n“,a); 程序的运行结果是_。(分数:2.00)A.IJKB.ABCDE/0FG/0IJKC.ABCDIJKD.EFGIJK15.有以下程序: char name20; int nun; scanf(“name=%S num=%d“,name, 当执行上述程序,并从键盘输入:na
7、me=Lili nun=1001回车后,name 的值为_。(分数:2.00)A.name=Lili num=1001B.name=LiliC.Lili num=D.Lili16.有以下程序: #includestdio.h main() char ch=“uvwxyz“,*pc;pc=ch; printf(“%c/n“,*(pc+5); 程序的运行结果是_。(分数:2.00)AzB.0C.元素 ch5的地址D.字符 y 的地址17.有以下程序: #includestdio.h main() char s=“012xy“; int 1,n=0; for(i=0;si!=0;i+) if(si=
8、“a“ printf(“%d/n“,n); 程序的运行结果是_。(分数:2.00)A.0B.2C.3D.518.若有以下定义和语句: #includestdio.h char s110=“abcd!“,*s2=“/n123/“; printf(“%d%d/n“,strlen(s1),strlen(s2); 程序的运行结果是_。(分数:2.00)A.10 7B.10 5C.5 5D.5 819.有以下程序: #includestdio.h main() char s=“abcde“; s+=2; printf(“%d/n“,s 0); 程序的运行结果是_。(分数:2.00)A.输出字符 c 的
9、ASCII 码B.程序出错C.输出字符 cD.输出字符 a 的 ASCII 码20.有以下程序: #includestdio.h void fun(char*t,char*s) while(*t!=0)t+; while(*t+=*s+)!=0); main() char ss10=“acc“,aa10=“bbxxyy“; fun(ss,aa); printf(“%s,%s/n“,ss,aa); 程序的运行结果是_。(分数:2.00)A.acc,hbxxyyB.accbbxxyy,bbxxyyC.accxxyy,bhxxyyD.accxyy,bbxxyy21.设有定义:char p=“1“,“
10、2“,“3“,*q=p;,以下不能计算出一个 char 型数据所占字节数的表达式是_。(分数:2.00)A.sizeof(p)B.sizeof(char)C.sizeof(*q)D.sized(p0)22.设有定义:char s81;int i=0;,以下不能将一行(不超过 80 个字符)带有空格的字符串正确读入的语句或语句组是_。(分数:2.00)A.gets(s);B.while(si+=getehar()!=“/n“);si=“/0“;C.scanf(“%s“,s);D.doscanf(“%c“,while(si+!=“/n“);si=“/0“;23.若有定义语句:char*s1=“OK
11、“,*s2=“ok“;,以下选项中,能够输出“OK”的语句是_。(分数:2.00)A.if(strcmp(s1,s2)!=0)puts(s2);B.if(strcmp(s1,s2)!=0)puts(s1);C.if(strcmp(s1,s2)=1)puts(s1);D.if(strcmp(s1,s2)=0)puts(s1);24.若要求从键盘读入含有空格字符的字符串,应使用函数_。(分数:2.00)A.getchar()B.getc()C.gets()D.scanf()25.下列选项中,能够满足“只要字符串 s1 等于字符串 s2,则执行 ST”要求的是_。(分数:2.00)A.if(s1-s
12、2=0)ST;B.if(s1=s2)ST;C.if(strcp)r(s1,s2)=1)ST;D.if(strcmp(s2,s1)=0)ST;26.若有代数式 (分数:2.00)A.sqrt(fabs(pow(n,x)+exp(x)B.sqrt(fabs(pow(n,x)+pow(x,e)C.sqrt(abs(nx+ex)D.sqrt(fabs(pow(x,n)+exp(x)27.下列叙述中错误的是_。(分数:2.00)A.可以给指针变量赋一个整数作为地址值B.函数可以返回地址值C.改变函数形参的值,不会改变对应实参的值D.当在程序的开头包含头文件 stdio.h 时,可以给指针变量赋 NULL
13、 值28.若函数调用时的实参为变量,下列关于函数形参和实参的叙述中正确的是_。(分数:2.00)A.函数的形参和实参分别占用不同的存储单元B.形参只是形式上的存在,不占用具体存储单元C.同名的实参和形参占同一存储单元D.函数的实参和其对应的形参共占同一存储单元29.下列叙述中错误的是_。(分数:2.00)A.C 程序必须由一个或一个以上的函数组成B.函数调用可以作为一个独立的语句存在C.若函数有返回值,必须通过 return 语句返回D.函数形参的值也可以传回给对应的实参30.下列关于 return 语句的叙述中正确的是_。(分数:2.00)A.一个自定义函数中必须有一条 return 语句B
14、.一个自定义函数中可以根据不同情况设置多条 return 语句C.定义成 void 类型的函数中可以有带返回值的 return 语句D.没有 return 语句的自定义函数在执行结束时不能返回到调用处31.已定义以下函数 int fun(int*p)return*p; fun 函数的返回值是_。(分数:2.00)A.一个整数B.不确定的值C.形参 p 中存放的值D.形参 p 的地址值32.下列叙述中错误的是_。(分数:2.00)A.用户定义的函数中可以没有 return 语句B.用户定义的函数中可以有多个 return 语句,以便可以调用一次返回多个函数值C.用户定义的函数中若没有 retur
15、n 语句,则应当定义函数为 void 类型D.函数的 return 语句中可以没有表达式33.若各选项中所用变量已正确定义,函数 fun 中通过 return 语句返回一个函数值,下列选项中错误的程序是_。(分数:2.00)A.main().x=fun(2,10);.float fun(int a,int B).Bfloat fun(int a,int B).main().x=fun(i,j);.B.float fun(int,int);main().x=fun(2,10);.float fun(int a,intC.D.main().float fun(int i,int j);.x=fun
16、(i,j);.float fun(int a,int B).34.有以下程序: #includestdio.h void 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“); 程序的运行结果是_。(分数:2.00)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
17、,1,D.0,1,2,3,4,5,6,7,8,9,35.有以下程序: #includestdio.h double f(double x); main() double a=0;int i; for(i=0;i30;i+=10)a+=f(double)i); printf(“%3.0f/n“,a); double f(double x) return x*x+1; 程序的运行结果是_。(分数:2.00)A.500B.40lC.503D.140436.有以下程序: #includestdio.h main() int m=1,n=2,*p= r=p; p=q; q=r; printf(“%d,%
18、d,%d,%d/n“,m,n,*p,*q); 程序的运行结果是_。(分数:2.00)A.2,1,1,2B.1,2,1,2C.2,1,2,1D.1,2,2,137.若有函数首部 int fun(double x10,int*n),则下列针对此函数的函数声明语句中正确的是_。(分数:2.00)A.int fun(double,int);B.int fun(double *,int *);C.int fun(double*x,int n);D.int fun(double x,int*n);38.有以下程序: #includestdio.h int f(int x); main() int n=1,
19、m; m=f(f(f(n); printf(“%d/n“,m); int f(int x) return x*2; 程序的运行结果是_。(分数:2.00)A.8B.2C.4D.139.有以下程序: #includestdio.h int fun(int x,int y) if(x!=y) return(x+y)/2); else return(x); main() int a=4,b=5,c=6; printf(“%d/n“,fun(2*a,fun(b,c); 程序的运行结果是_。(分数:2.00)A.6B.3C.8D.1240.有以下程序: #includestdio.h int f(int
20、 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); 程序的运行结果是_。(分数:2.00)A.7B.10C.8D.941.设有如下函数定义: #includestdio.h int fun(int k) if(k1)return 0; else if(k=1)return 1; else return fun(k-1)+1; 若执行调用语句 n=fun(3);,则函数 fun 总共被调用的次数是_。(分数:2.50)A.2B.3C.4D.542.有以下程序: #incl
21、udestdio.h int fun(int x) int p; if(x=0|x=1) return(3); p=x-fun(x-2); return p; main() printf(“%d/n“,fun(7); 程序的运行结果是_。(分数:2.50)A.2B.3C.7D.043.有以下程序: #includestdio.h void f(int b) int i; for(i=2;i6;i+) bi*=2; main() int a10=1,2,3,4,5,6,7,8,9,10,i; f(a); for(i=0;i10;i+) printf(“%d,“,ai); 程序的运行结果是_。(分
22、数:2.50)A.1,2,3,4,5,6,7,8,9,10,B.1,2,6,8,10,12,7,8,9,10,C.1,2,3,4,10,12,14,16,9,10,D.1,2,6,8,10,12,14,16,9,10,44.在一个 C 源程序文件中所定义的全局变量,其作用域为_。(分数:2.50)A.由具体定义位置和 extern 说明来决定范围B.所在程序的全部范围C.所在函数的全部范围D.所在文件的全部范围45.在 C 语言中,只有在使用时才占用内存单元的变量,其存储类型是_。(分数:2.50)A.auto 和 staticB.extern 和 registerC.auto 和 regis
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 442 答案 解析 DOC
