【计算机类职业资格】二级C语言笔试-452及答案解析.doc
《【计算机类职业资格】二级C语言笔试-452及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言笔试-452及答案解析.doc(30页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言笔试-452 及答案解析(总分:99.00,做题时间:90 分钟)一、选择题(总题数:40,分数:65.00)1.下列选项中,不是一个算法的基本特征的是( )。A) 完整性 B) 可行性C) 有穷性 D) 拥有足够的情报(分数:2.00)A.B.C.D.2.某二叉树有 5个度为 2的结点,则该二叉树中的叶子结点数是A) 10 B) 8 C) 6 D) 4(分数:2.00)A.B.C.D.3.在面向对象方法中,信息隐蔽是依靠A) 对象的继承 B) 对象的多态 C) 对象的封装 D) 对象的分类(分数:2.00)A.B.C.D.4.在计算机中,算法是指( )。A) 查询方法 B) 加工
2、方法C) 解题方案的准确而完整的描述 D) 排序方法(分数:1.00)A.B.C.D.5.下列选项中不属于结构化程序设计原则的是( )。A可封装 B自顶向下C模块化 D逐步求精(分数:1.00)A.B.C.D.6.设有如下三个关系表(分数:2.00)A.B.C.D.7.软件调试的目的是( )。A) 发现错误 B) 改善软件的性能C) 改正错误 D) 验证软件的正确性(分数:2.00)A.B.C.D.8.以下叙述中错误的是_。A) C语言源程序经编译后生成后缀为.obj 的目标程序B) C程序经过编译、连接步骤后才能形成一个真正可执行的二进制机器指令文件C) 用 C语言编写的程序称为源程序,它以
3、 ASCII代码形式存放在一个文本文件中D) C语青中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令(分数:1.00)A.B.C.D.9.下列定义变量的语句中错误的是_。(A) int _int;(B) double int_;(C) char for;(D) float US$(分数:1.00)A.B.C.D.10.设变量已正确定义并赋值,以下正确的表达式是A) x=y*5=x+Z B) int(15.8%5) C) x=y+z+5,+y D) x=25%5.0(分数:1.00)A.B.C.D.11.在 ASCII代码表中每一个大写字母比它相应的小写字母的 ASCII码( )。
4、A) 小 32 B) 小 64 C) 大 32 D) 大 1(分数:1.00)A.B.C.D.12.下列程序的输出结果是 _。main()int i=3; switch(i)case 1:casc 2: printf(“%d“,i);case 3:case 4: break;defanlt:printf(“OK“);A) 0 B) 3 C) OK D) 没有任何输出(分数:1.00)A.B.C.D.13.设 int型占 2个字节,则 unsigned int所能表示的数据范围是_。A) 065535 B) -3276932767 C) 165536 D) 032767(分数:2.00)A.B.
5、C.D.14.下列程序执行后输出的结果是_。int d=l;fun(int p)int d=5;d+=p+;printf(“%d,“,d);main()int a=3;fun(a);d+=a+;printf(“%d/n“,d);A) 8,12 B) 9,13 C) 8,4 D) 9,5(分数:1.00)A.B.C.D.15.下列能正确定义一维数组的选项是( )。A) int a5=0,1,2,3,4,5;B) char a=0,1,2,3,4,5;C) char a=A,B,C);D) int a5=“0123“;(分数:2.00)A.B.C.D.16.以下选项中,当 x为大于 1的奇数时,值
6、为 0的表达式是A) x%2=1 B) x/2 C) x%21=0 D) x%2=0(分数:2.00)A.B.C.D.17.下面程序的输出结果是int b=2;int func(int *a)b+=*a;return(b);main( )int a=2,res=2;res+=fune(for(i=0;in/2;i+)t=ai;ai=an-1-i;an-1-i=t;main()int b10=1,2,3,4,5,6,7,8,9,10;int i,s=0;reverse(b,10) ;for(i=0;i3;i+)s+=bi;printf(“%d/n“,s);程序运行后的输出结果是( )。A) 27
7、 B) 6 C) 25 D) 30(分数:2.00)A.B.C.D.19.以下程序段完全正确的是 A) int *P; scanf(“%d“, B) int *P; scanf(“%d“, p); C) int k, *P= scanf(“%d“, p); D) int k, *P; *P= scanf(“%d“, p);(分数:2.00)A.B.C.D.20.若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是( )。A函数的实参和其对应的形参共占同一存储单元 B形参只是形式上的存在,不占用具体存储单元C同名的实参和形参占同一存储单元 D函数的形参和实参分别占用不同的存储单元(
8、分数:1.00)A.B.C.D.21.执行下列程序时输入 456空格789空格123回车,输出结果是( )。 #includestdio.h main() char m80; int c,i; scanf(“%c“, scanf(“%d“,for(i=1;i10;i+ =2) s+ =i+1;printf(“%d/n“,s);程序执行后的输出结果是( )。A) 正整数 19 的累加和 B) 正整数 110 的累加和C) 正整数 19 中奇数之和 D) 正整数 110 中偶数之和(分数:1.00)A.B.C.D.23.阅读下列程序段,则程序的输出结果为#include “stdio.h“#def
9、ine M(X,Y)(X)*(Y)#define N(X,Y)(X)/(Y)main( )int a=5,b=6,c=8,k;k=N(M(a,b),c);printf(“%d/n“,k);A)3 B)5 C)6 D)8(分数:2.00)A.B.C.D.24.在 16位 IBM-PC机上使用 C语言,若有如下定义stmct datainti;char ch;double fb;则结构变量 b占用内存的字节数是A) 1 B) 2 C) 7 D) 11(分数:2.00)A.B.C.D.25.有以下函数:int fun(char * s)char * t=s;while(*t+);return(t-s
10、)该函数的功能是_。A) 比较两个字符串的大小 B) 计算 s所指字符串占用内存字节个数C) 计算 s所指字符串的长度 D) 将 s所指字符串复制到字符串 t中(分数:2.00)A.B.C.D.26.有以下程序:#include stdio.hmain()int a = 2,4,6,8,10 ,y =0,x, * p;p =for(x=1;x3;x+)y+ =px;printf( “% d /n“ , y); 程序运行后的输出结果是( )。A) 10 B) 11 C) 14 D) 15(分数:1.00)A.B.C.D.27.下述程序的输出结果是( )。#includestdio.hvoid m
11、ain()int a5=1,2,3,4,5;int *p=a,*q=p;printf(“%d,“,*(p+);printf(“%d“,*q);A) 2,2 B) 1,1 C) 3,4 D) 1,2(分数:2.00)A.B.C.D.28.判断字符串 s1是否大于字符串 s2,应该使用( )。A) if(strcmp(s1,s2)0) B) if(s1s2)C) if(strcmp(s2,s1)0) D) if(strcmp(s1,s2)(分数:2.00)A.B.C.D.29.有以下程序#include#define N 5#define M N+1#define f(x) (x*M)main()
12、int i1,i2;i1=f(2);i2=f(1+1);printf(“%d %d“,i1,i2);程序的运行结果是_。(A) 12 12(B) 11 7(C) 11 11(D) 12 7(分数:2.00)A.B.C.D.30.下列程序的输出结果是( )。#includestdio.h#includedstring.hvoid fun(int b)static int i=0;dobi+=bi+1;while(+i2);main()int k,a5=1,3,5,4,9;fun(a);for(k=0;k5;k+)printf(“%d“,ak);A13579 B48579 C48549 D4899
13、9(分数:1.00)A.B.C.D.31.有以下程序:#define P 3void F(int x)return(P*x*x);main()printf(“%d/n“,F(3+5);程序运行后的输出结果是_。A) 192 B) 29 C) 25 D) 编译出错(分数:2.00)A.B.C.D.32.下面程序段的运行结果是char *p=“abedefgh“:p+=3;printf(“070 d/n“,strlen(strcpy(P,“ABCD“);A) 8 B) 12 C) 4 D) 7(分数:2.00)A.B.C.D.33.设定义下列结构体,结构体变量 p的出生年份赋值正确的语句是( )。
14、stmct stint x;int y;int z;struct workerchar name20;char sex;struct st birth;p;A) x=1987 B) birth.x=1987; C) p.birth.x=1987; D) p.x=1987;(分数:1.00)A.B.C.D.34.已知有结构体:struct skint a;float b;data,*p;若有 p= C) p-data.a D) p.data.a(分数:2.00)A.B.C.D.35.若有运算符:、*=、%、sizeof,则它们按优先级(由低至高)的正确排列次序为( )。A) *= % Sizeo
15、f B) *= % sizeofC) *= sizeof % D) *= % sizeof(分数:1.00)A.B.C.D.36.设 x=015,则 x=x017的值是( )。A) 00001111 B) 11111101 C) 00000010 D) 11000000(分数:2.00)A.B.C.D.37.设 x=015,则 x=x017的值是( )。A) 00001111 B) 11111101 C) 00000010 D) 11000000(分数:2.00)A.B.C.D.38.设有以下语句:int a=1,b=2,c;c=a(b2);执行后,C 的值为_。A) 6 B) 7 C) 8
16、D) 9(分数:2.00)A.B.C.D.39.若 x=2,y=3,则 xdob-=a;a+;while(b-0);printf(“%d,%d/n“,a,b);(分数:2.00)填空项 1:_47.以下程序的输出结果是_。#includestdio.hmain()int x=27;while(x20if(x/3)x+;break;elsecontinue;printf(“%d/n“,x);(分数:2.00)填空项 1:_48.若有定义:int a44=l,2,3,4,0,4,6,8,10,1,3,5,7,则初始化后,a22得到的初值是 1。(分数:2.00)填空项 1:_49.下列程序的输出结
17、果是_。#includestdio.h#define N 5jnt fun(int*s,int a,int n)int j;*s=a;j=n:while(a!=sj)j-;return j;main()int sN+1;int k;for(k=1;k=N;k+)sk=k+1;printf(“%d/n“,fun(s,4,N);(分数:4.00)填空项 1:_50.下列程序输出的结果是_.int m=17;int fun(int x,int y)int m=3;return(x*y-m);main()int a=5,b=7;printf(“%d/n“,fun(a,b)/m);(分数:2.00)填空
18、项 1:_51.若有下列定义:int a=1,2,3,4,5,6,7,8,9,10,*p=a;,则值为 3的表达式为: 1。(分数:2.00)填空项 1:_52.函数 fun的功能是计算 xn。double fun(double x,int n)int i; double y=1;for(i=1;i=n;i+) y=y*x;return y;主函数中已经正确定义变量 m,a,b 并赋值,要调用函数 fun计算:m=a 4+b4-(a+b)3。实现这一计算的函数调用语句为U /U。(分数:2.00)填空项 1:_53.若有说明 char s1=“That girl“,s2=“is beautif
19、ul“;则使用函数 strcmp(s1,s2)后,结果是 1。(分数:2.00)填空项 1:_54.下列程序的输出结果是_。#includestdio.hfun()static int a0;a+3;printf(“%d“,a) ;main()int cc;for(CC1;cc5;CC+)fun();printf(“/n);(分数:2.00)填空项 1:_55.下列程序的运行结果是_。#define POW(r)(r)*(r)main()int x=3,y=2,t;t=POW(x+y);printf(“%d/n“,t);(分数:2.00)填空项 1:_二级 C语言笔试-452 答案解析(总分:
20、99.00,做题时间:90 分钟)一、选择题(总题数:40,分数:65.00)1.下列选项中,不是一个算法的基本特征的是( )。A) 完整性 B) 可行性C) 有穷性 D) 拥有足够的情报(分数:2.00)A. B.C.D.解析:解析 作为一个算法,一般应该具有下列 4个特征:可行性,即考虑到实际的条件能够达到一个满意的结果;确定性,算法中的第一个步骤都必须是有明确定义的;有穷性,一个算法必须在有限的时间内做完;拥有足够的情报。2.某二叉树有 5个度为 2的结点,则该二叉树中的叶子结点数是A) 10 B) 8 C) 6 D) 4(分数:2.00)A.B.C. D.解析:解析 对于任何一棵二叉树
21、 T,如果其终端结点(叶子)数为 n1,度为 2的结点数为 n2,则n1=n2+1。所以该二叉树的叶子结点数等于 5+1=6。3.在面向对象方法中,信息隐蔽是依靠A) 对象的继承 B) 对象的多态 C) 对象的封装 D) 对象的分类(分数:2.00)A.B.C. D.解析:解析 封装是一种信息屏蔽技术,目的在于将对象的使用者和对象的设计者分开。用户只能见到对象封装界面上的信息,不必知道实现的细节。封装一方面通过数据抽象把相关的信息、结合在一起,另一方面也简化了接口。4.在计算机中,算法是指( )。A) 查询方法 B) 加工方法C) 解题方案的准确而完整的描述 D) 排序方法(分数:1.00)A
22、.B.C. D.解析:解析 计算机算法是指解题方案的准确而完整的描述,它具有的基本特征有:可行性、确定性、有穷性和拥有足够的情报。5.下列选项中不属于结构化程序设计原则的是( )。A可封装 B自顶向下C模块化 D逐步求精(分数:1.00)A. B.C.D.解析:解析 结构化程序设计的主要原则概括为自顶向下,逐步求精,限制使用 GOTO语句。6.设有如下三个关系表(分数:2.00)A.B.C. D.解析:解析 对于两个关系的合并操作可以用笛卡尔积表示。设有 n元关系 R和 m元关系 S,它们分别有 p和 g个元组,则 R与 S的笛卡尔积记为 RS,它是一个 m+n元关系,元组个数是 pq,由题意
23、可得,关系 T是由关系 R与关系 S进行笛卡尔积运算得到的。7.软件调试的目的是( )。A) 发现错误 B) 改善软件的性能C) 改正错误 D) 验证软件的正确性(分数:2.00)A.B.C. D.解析:解析 在对程序进行了成功的测试之后将进入程序调试,程序调试的任务是诊断和改正程序中的错误。8.以下叙述中错误的是_。A) C语言源程序经编译后生成后缀为.obj 的目标程序B) C程序经过编译、连接步骤后才能形成一个真正可执行的二进制机器指令文件C) 用 C语言编写的程序称为源程序,它以 ASCII代码形式存放在一个文本文件中D) C语青中的每条可执行语句和非执行语句最终都将被转换成二进制的机
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 笔试 452 答案 解析 DOC
