【计算机类职业资格】二级C语言笔试317及答案解析.doc
《【计算机类职业资格】二级C语言笔试317及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试317及答案解析.doc(16页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C 语言笔试 317 及答案解析(总分:101.00,做题时间:90 分钟)一、B选择题/B(总题数:40,分数:71.00)1.以下 4 组用户定义标识符中,全部合法的一组是 _。(分数:2.00)A._main enclude sinB.If -max turboC.txt REAL 3COMD.int k_2 _0012.有以下程序: main() char s=“ABCD“,*p; for (p=s+1;ps+4;p+ )printf(“%s/n“,p); 程序运行后的输出结果是 _。(分数:2.00)A.ABCD BCD CD DB.A B C DC.B C DD.BCD CD
2、 D3.设有定义:long x=123456L;,则以下能够正确输出变量 x 值的语句是 _。(分数:2.00)A.printf(“x=%d/n“,;B.printf(“x=%1d/n“,;C.printf(“x=%8dL/n“,;D.printf(“x=%LD/n“,;4.有以下程序: 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+1)xj)k=xj;xj;xj+1);xj+1=k; for (i=0;i3;i+) for (j=4;j7-i;j+) if (xjxj+1)k=xj;xj=
3、xj+1;xj+1)=k; for(i=0;i8;i+)printf(“%d“,xi); printf(“/n“); 程序运行后的输出结果是 _。(分数:2.00)A.75310246B.01234567C.76310462D.135702465.有以下程序: main() unsignedchar a,b; a= 4|3; b=4 printf(“%d%d/n“,a,b); 执行后输出结果是 _。(分数:2.00)A.7 0B.0 7C.1 1D.43 06.有以下程序: void sum(int a) a0=a-1)+a1; main() int a10=(1,2,3,4,5,6,7,8,
4、9,10;sum(else printf(“%d/n“,;B.if(a= =0) printf(“%d/n“,;else printf(“%d/n“,;C.if(a!=0)printf(“%d/n“,;else printf(“%d/n“,;D.if(a= =0)printf(“%d/n“,;else printf(“%d/n“,;8.在 C 语言中,函数的隐含存储类别是 _。(分数:2.00)A.autoB.staticC.externD.无存储类别9.有以下程序: void sum(int *a) a0= a1; main() int aa10=1,2,3,4,5,6,7,8,9,10,i
5、; for(i=2;i=0;i-)sum( 执行后的输出结果是 _。(分数:2.00)A.4B.3C.2D.110.有以下程序: main() int m=12,n=34; printf(“%d %d“,m+,+n);printf(“%d%d/n“,n+,+m); 程序运行后的输出结果是 _。(分数:2.00)A.12353514B.12353513C.12343514D.1234351311.以下不能正确定义二维数组的选项是 _。(分数:1.00)A.int a22=1,2;B.int a2=1,2,3,4;C.int a22=1,2,3;D.int a2=1,2,3,4;12.有以下程序:
6、 # includestring.h main() char str20=“Hello“,“Beijing“,*p=str; printf(“%d/n“,strlen(p+20); 程序运行后的输出结果是 _。(分数:1.00)A.0B.5C.7D.2013.已知 i、j、k 为 int 型变量,若从键盘输入:1,2,3回车,使 i 的值为 1、j 的值为 2、k 的值为3,以下选项中正确的输入语句是 _。(分数:1.00)A.sanf(“%2d %2d %2d“,B.scanf(“%d %d %d“,C.scanf(“%d,%d,%d“,D.scanf(“i=%d,j=%d,k=%d“,14
7、.设函数 fun 的定义形式为: void fun(char ch,float x) 则以下对函数 fun 的调用语句中,正确的是 _。(分数:1.00)A.fun(“abc“,3.0);B.t=fun(D,16.5);C.fun(65,2,8);D.fun(32,32);15.有以下程序: char fun(char x,char y if(xy)return x; return y; main() int a=9,b=8,c=7; printf(“%c/n“,fun(fun(a,b),fun(b,c) ); 程序的执行结果是 _。(分数:1.00)A.函数调用出错B.8C.9D.716.若
8、整型变量 a、b、c、d 中的值依次为:1、4、3、2,则条件表达式 ab?a:cd?c:d 的值是 _。(分数:1.00)A.1B.2C.3D.417.以下能正确定义一维数组的选项是 _。(分数:1.00)A.int num;B.#define N 100 int num;C.int num0100;D.int N=100; int num;18.有以下程序: main() int I; For (i=0;i3;i+) switch(i) case 0:printf(“%d“,i); case 2:printf(“%d“,i); default:printf(“%d“,i); 程序运行后的输
9、出结果是 _。(分数:1.00)A.022111B.021021C.000122D.01219._语言负责数据的模式定义与数据的物理存取构建。(分数:2.00)A.数据操纵语言(DMB.数据控制语言(DCC.结构化查询语言(SQD.数据定义语言(DD20.设有定义:int n1=0,n2,*p=,以下赋值语句中与 n2=n1;语句等价的是 _。(分数:1.00)A.*p=*q;B.p=q;C.*p=21.若 x 和 y 代表整型数,以下表达式中不能正确表示数学关系|x-y|10 的是 _。(分数:2.00)A.abs(x-10B.x-y-10,则能正确从键盘读入 3 个整数分别赋给变量 a、b
10、、c 的语句是 _。(分数:2.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,*;23.以下程序段的输出结果是 _。 int a=1234; printf(“% 2d/n“,a);(分数:2.00)A.12B.34C.1234D.提示出错、无结果24.有以下程序: # includestdio.h main() char*p,*q; p=(char *)malloc(sizeof(char)* 20);q=p; scanf(“%s %s“,p,q);printf(“
11、%s %s/n“,p,q); 若从键盘输入;abc def回车,则输出结果是 _。(分数:2.00)A.def defB.abc defC.abe dD.d d25.有以下程序: main() int i=0,s=0; for(;) if(i=3|i=5)continue; if(i=6)break; i+; s+=i; ; printf(“%d/n“,s); 程序运行后的输出结果是 _。(分数:2.00)A.10B.13C.21D.程序进入死循环26.已定义 c 为字符型变量,则下列语句中正确是 _。(分数:2.00)A.c=97;B.c=“97“;C.c=97;D.c=“a“;27.执行下
12、列程序时输入:123空格456空格789回车,输出结果是 _。 main() char s100;int c,i; scanf(“%c“, scanf(“%d“, scanf(“%s“,s); printf(“%c,%d,%s/n“,c,i,s); (分数:2.00)A.123,456,789B.1,456,789C.1,23,456,789D.1,23,45628.下述关于数据库系统的叙述中正确的是 _。(分数:2.00)A.数据库系统减少了数据冗余B.数据库系统避免了一切冗余C.数据库系统中数据的一致性是指数据类型一致D.数据库系统比文件系统能管理更多的数据29.以下叙述中错误的是 _。(
13、分数:2.00)A.对于 double 类型数组,不可以直接用数组名对数组进行整体输入或输出B.数组名代表的是数组所占存储区的首地址,其值不可改变C.当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息D.可以通过赋初值的方式确定数组元素的个数30.以下数据库除 _外,均为严格意义上的 DBMS 系统。(分数:2.00)A.OracleB.AccessC.Sybase 的 PowerBuilderD.SQL Server31.x、y、z 被定义为 int 型变量,若从键盘给 x、y、z 输入数据,正确的输入语句是 _。(分数:2.00)A.INPUT x、y、z
14、;B.scanf(“%d%d%d“,C.scanf(“%d%d%d“,x,y,;D.read(“%d %d %d“,32.有以下程序: main() int a=5,b=4,c=3,d=2; if(abc) printf(“%d/n“,d); else if(c-1=d)=1) printf(“%d/n“,d+1); else printf(“%d/n“,d+2); 执行后输出结果是 _。(分数:2.00)A.2B.3C.4D.编译时有错,无结果33.以下程序的功能是:给 r 输入数据后计算半径为 r 的圆面积 s。程序在编译时出错。 main() /* Beginning*/ int r;f
15、loat s; scanf(“%d“, s=*r*r*r;printf(“s= %f/n“,s); 出错的原因是 _。(分数:2.00)A.注释语句书写位置错误B.存放圆半径的变量不应该定义为整型C.输出语句中格式描述符非法D.计算圆面积的赋值语句中使用了非法变量34.以下选项中可以作为 C 语言中合法整数的是 _。(分数:2.00)A.10110BB.0386C.0XffaD.x2a235.有以下程序: main() int p8=11,12,13,14,15,16,17,18,i=0,j=0; while(i+7)if(pi%2)j+=pi; printf(“%d/n“,j); 程序运行后
16、的输出结果是 _。(分数:2.00)A.42B.45C.56D.6036.已经定义 ch 为字符型变量,以下赋值语句中错误的是 _。(分数:2.00)A.ch=/;B.ch=62+3;C.ch=NULL;D.ch=/xaa;37.有以下程序,其中函数的功能是将多个字符串按字典顺序排序: # includestring.h void f(char*p,int n) char *t; int i,j; for(i=0;in-1;i+) for(j=i+1;jn;j+) if(strcmp(pi,pj)0)t=pi;pi=pjpj=t; main() char *p5=“abc“,“aabdfg“,
17、“abbd“,“dcdbe“,“cd“; f(p,5); printf(“%d/n“,strlen(p1); 程序运行后的输出结果是 _。(分数:2.00)A.2B.3C.6D.438.有以下程序: main() char s=“Yes/n/No“,*ps=s; puts(ps+4); *(ps+4)=0; puts(s); 程序运行后的输出结果是(选项 D 中的第一行是空行) _。(分数:2.00)A.n/No Yes /NoB./No Yes YesC.n/No /NoD.Yes /No39.设有以下定义: int a=0; double b=1.25; char c=A # define
18、 d2 则下面语句中错误的是 _。(分数:2.00)A.a+;B.b+;C.c+D.d+40.有以下程序: main() int a=1,b=2,m=0,n=0,k; k=(n=ba)|(m=ab); printf(“%d,%d/n“,k,m); 程序运行后的输出结果是 _。(分数:2.00)A.0,0B.0,1C.1,0D.1,1二、B填空题/B(总题数:15,分数:30.00)41.以下程序的功能是计算:s=1+12+123+1234+12345。请填空。 main() int t=0,s=0,i; for(i=1;i=5;i+) t=i+U 【1】 /U;s=s+t; printf(“s
19、=%d/n“,s); (分数:2.00)填空项 1:_42.以下程序段的输出结果是U 【2】 /U。 int i=9; printf(“%o/n“,i);(分数:2.00)填空项 1:_43.已知字符 A 的 ASCII 码值为 65,以下语句的输出结果是U 【3】 /U。 char ch=B; printf(“%c%d/n“ch,ch);(分数:2.00)填空项 1:_44.已有定义:double*p;,请写出完整的语句,利用 malloc 函数使 p 指向一个双精度型的动态存储单元U 【4】 /U。(分数:2.00)填空项 1:_45.以下程序运行后的输出结果是U 【5】 /U。 int
20、a=5; fun(int b) static int a=10; a+=b+; printf(“%d“,a); main() int c=20; fun(c); a+=c+; printf(“%d/n“,a); (分数:2.00)填空项 1:_46.有以下程序: # includestdio.h main() char ch1,ch2; int n1,n2 ch1=getchar(); ch2=getchar(); n1=ch1-0; n2=n1*10+(ch2-0); printf(“%d/n“,n2); 程序运行时输入:12回车,执行后的输出结果是U 【6】 /U。(分数:2.00)填空项
21、 1:_47.以下程序运行后的输出结果是U 【7】 /U。 main() int x=1,y=0,a=0,b=0; switch (x) case1:switch (y) case0:a+;break; case1:b+;break; case2:a+;b+;break; printf(“% d%d/n“,a,b); (分数:2.00)填空项 1:_48.若有以下程序: main() int a=4,b=3,c=5,t=0; if(ab)t=a;a=b;b=t; if(ac)t=a; a=c; c=t; printf(“%d %d %d/n“,a,b,c); 执行后的输出结果是U 【8】 /U
22、。(分数:2.00)填空项 1:_49.以下程序运行后的输出结果是U 【9】 /U。 main() int a=1,b=3,c=5; if(c=a+b) printf(“yes/n“); else printf(“no/n“); (分数:2.00)填空项 1:_50.以下程序运行时若从键盘输入:10 20 30回车,输出结果是U 【10】 /U。 # includestdio.h main() int i=0,j=0,k=0; scanf(“%d% *d%d“,printf(“%d %d %d/n“,i,j,k); (分数:2.00)填空项 1:_51.以下程序运行后的输出结果是U 【11】
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 317 答案 解析 DOC
