【计算机类职业资格】二级C语言分类模拟题519及答案解析.doc
《【计算机类职业资格】二级C语言分类模拟题519及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】二级C语言分类模拟题519及答案解析.doc(17页珍藏版)》请在麦多课文档分享上搜索。
1、二级 C语言分类模拟题 519及答案解析(总分:58.50,做题时间:90 分钟)一、选择题(总题数:35,分数:58.50)1.有以下程序 #includestdio.h main() char a,b,c,d; scanf(“%c%c“, c=getchar();d=getchar(); printf(“%c%c%c%c/n“,a,b,c,d); 当执行程序时,按下列方式输入数据(从第 1列开始,CR代表回车,注意:回车也是一个字符) 12CR 34CR 则输出结果是_。(分数:1.00)A.12 34B.12C.1234D.12 32.if语句的基本形式是:if(表达式)语句,以下关于“
2、表达式”值的叙述中正确的是_。(分数:1.00)A.必须是逻辑值B.必须是整数值C.必须是正数D.可以是任意合法的数值3.有以下程序: #include stdio.h #define FNA(x) x*x #define FNB(x) x+z main() int a=2,b=4; printf(“%d,%d/n“,FNA(FNB(a),FNB(FNA(b); 程序运行后的输出结果是_。(分数:1.00)A.8,16B.16,32C.8,32D.16,164.以下程序的输出结果是_。 void fun(int*a, int i, int j) int t; if(ij) t=ai; ai=a
3、j; aj=t; i+; j-; fun(a, i, j); main() int x=2, 6, 1, 8, i; fun(x, 0, 3); for(i=0; i4; i+) printf(“%2d“, xi); printf(“/n“); (分数:2.50)A.1,2,6,8B.8,6,2,1C.8,1,6,2D.8,6,1,25.以下关于 switch语句的叙述中正确的是_。(分数:1.00)A.所有 case的标号都应当是连续的B.每个 case语句标号后面可以没有 break语句C.char型常量不能做 case的标号使用D.default必须放在全部 case的最后6.按照 C语
4、言规定的用户标识符命名规则,不能出现在标识符中的是_。(分数:2.00)A.大写字母B.下划线C.数字字符D.连接符7.有以下函数: fun(char * a,char * b) while(*a!=“/0“) printf(“%d,“,b=a+b); printf(“%d/n“,a=2*b);(分数:2.00)A.1,2B.1,0C.3,2D.0,010.若有 char s34=“AAA“,“BBB“,“CCC“;说明语句,则与它等价的语句是_。(分数:2.00)A.char*s=“AAA“,“BBB“,“CCC“;B.char*s3=“AAA“,“BBB“,“CCC“;C.char s5=
5、“AAA“,“BBB“,“CCC“;D.char s4=“AAA“,“BBB“,“CCC“;11.有以下程序: #includestdio.h void fun(int*a, int n)/*fun函数的功能是将 a所指数组元素从大到小排序*/ int t, i, j; for(i=0; in-1; j+) for(j=i+1; jn; j+) if(aiaj)t=ai; ai=aj; aj=t; main() int c10=1, 2, 3, 4, 5, 6, 7, 8, 9, 0, i; fun(c+4, 6); for(i=0; i10; i+) printf(“%d, “, ci);
6、printf(“/n“); 程序运行的结果是_。(分数:2.50)A.1,2,3,4,5,6,7,8,9,0,B.0,9,8,7,6,5,1,2,3,4,C.0,9,8,7,6,5,4,3,2,1,D.1,2,3,4,9,8,7,6,5,0,12.有以下程序 #includestdio.h void fun(char*p) +p; printf(“%s/n“,*p); main() char*a=“Morning“,“Afternoon“,“Evening“,“Night“); fun(a); 程序的运行结果是_。(分数:1.00)A.AfternoonB.fternoonC.MorningD
7、.orning13.有以下程序: #include stdio.h main() int x=1, y=2, z=3; if(xy) if(yz) printf(“% d“, +z); else printf(“% d“, +y); printf(“% d/n“, x+); 程序的运行结果是_。(分数:1.00)A.331B.41C.2D.114.表达式 3.6-5/2+1.2+5%2的值是_。(分数:2.00)A.4.3B.4.8C.3.3D.3.815.在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是_。(分数:2.50)A.逻辑设计B.需求分析C.详细设计D.物理设计1
8、6.下列条件语句中,输出结果与其他语句不同的是_。(分数:1.00)A.if(a=0) printf(“%d/n“,x); else printf(“%d/n“,y);B.if(a=0) printf(“%d/n“,y); else printf(“%d/n“,x);C.if(a!=0) printf(“%d/n“,x); else printf(“%d/n“,y);D.if(a) printf(“%d/n“,x); else printf(“%d/n“,y);17.以下程序的输出结果是_。 #include stdio.h void prt (int *x,int *y,int *z) pr
9、intf(“%d,%d,%d/n“,+*x,+*y,*(z+); main() int a=10,b=40,c=20; prt ( prt ((分数:2.50)A.11,42,3112,22,41B.11;41,2012,42,20C.11,21,4011,21,21D.11,41,2112,42,2218.有以下程序: main() int x=102,y=012; printf(“%2d,%2d/n“,x,y); 执行后输出结果是 _ 。(分数:1.00)A.10,01B.02,12C.102,10D.02,1019.有以下定义: int a; long b; double x,y; 则以
10、下选项中正确的表达式是_。(分数:1.00)A.a%(int)(x-y)B.a=xyC.(a*y)%bD.y=x+y=x20.下列程序段的输出结果是 int n=“c“; switch(n+) default: printf(“error“);break; case “a“: case “A“: case “b“: case “B“: printf(“good“);break; case “c“: case “C“: printf(“pass“); case “d“: case “D“: printf(“warn“); (分数:1.00)A.passwarnB.passerrorC.goodp
11、asswarnD.pass21.若有以下定义和语句: char s 10=“abcd!“, *s2=“/n123/“; printf(“%d %d/n“, strlen(s1), strlen(s2); 则输出结果是_。(分数:1.00)A.5 5B.10 5C.10 7D.5 822.有以下程序: #include stdio.h #define SUB(X,Y) (X+1)*Y main( ) int a=3,b=4; printf(“%d/n“,SUB(a+ +,b+ +); 程序运行后的输出结果是_。(分数:5.00)A.25B.20C.12D.1623.以下程序运行后的输出结果是_。
12、 int d=1: fun(int p) static int d=5;d+=p; printf(“%d“,d);return d; main() int a=3;printf(“%d/n“,fun(a+fun(d);(分数:2.00)A.699B.669C.61515D.661524.以下程序运行后,输出结果是 ( ) fut(int * * s,int p23) * * sp11; main( ) int a 2 3 1, 3, 5, 7, 9, 11, * p; p=(int * )malloc (sizeof(int); fut( printf(“%d“,ab?a:dc?d:b);(分
13、数:2.00)A.1B.3C.2D.427.有以下程序 #include stdio.h void main() char s=“01aXy“;int i,n=0; for(i=0;si!=0;i+) if(s i=“a“ printf(“%d/n“,n); 程序运行后的输出结果是_。(分数:2.50)A.0B.2C.3D.528.在一个 C源程序文件中所定义的全局变量,其作用域为_。(分数:2.00)A.所在文件的全部范围B.所在程序的全部范围C.所在函数的全部范围D.由具体定义位置和 extern说明来决定范围29.关系表中的每一横行称为个_。(分数:2.00)A.元组B.字段C.属性D码
14、30.以下叙述中错误的是_。(分数:2.00)A.C语言源程序经编译后生成后缀为.obj 的目标程序B.C程序经过编译、连接步骤后才能形成一个真正可执行的二进制机器指令文件C.用 C语言编写的程序称为源程序,它以 ASC代码形式存放在一个文本文件中D.C语言中的每条可执行语句和非执行语句最终都将被转换成二进制的机器指令31.已知 i、j、k 为血型变量,若要从键盘输入 2、3、4CR,使 i、j、k 的值分别为 2、 3、4,下列正确的输入语句是 _ 。(分数:1.00)A.scanf(“%3d,%3d,%3d“,B.scan(“%d,%d,%d“,C.scan(“%do/od%d“,D.sc
15、anf(“i%d,j%d,k%d“,32.在以下一组运算中,优先级最高的运符算是 ( )(分数:1.00)A.B.C.%D. printf(“%d,“,b=a+b); printf(“%d/n“,a=2+b); 程序运行后的输出结果是_。(分数:1.00)A.0,0B.1,0C.3,2D.1,234.有以下程序: #include stdio.h main() FILE *fp; int i,a6=1,2,3,4,5,6,k; fp = fopen(“data.dat“,“w+“); fprintf(fp, “%d/n“, a0); for (i=1; i6; i+) fseek(fp, 0L
16、, 0); fscanf(fp, “%d“, fseek(fp, 0L, 0); fprintf(fp, “%din“, ai+k); rewind(fp); fseanf(fp, “%d“, fclose(fp); printf(“%d/n“, k); 程序的运行结果是_。(分数:1.00)A.21B.6C.123456D.1135.两个或两个以上模块之间关联的紧密程度称为_。(分数:2.00)A.耦合度B.内聚度C.复杂度D.数据传输特性二级 C语言分类模拟题 519答案解析(总分:58.50,做题时间:90 分钟)一、选择题(总题数:35,分数:58.50)1.有以下程序 #includ
17、estdio.h main() char a,b,c,d; scanf(“%c%c“, c=getchar();d=getchar(); printf(“%c%c%c%c/n“,a,b,c,d); 当执行程序时,按下列方式输入数据(从第 1列开始,CR代表回车,注意:回车也是一个字符) 12CR 34CR 则输出结果是_。(分数:1.00)A.12 34B.12C.1234D.12 3 解析:解析 按照从键盘输入的数据可以判断字符 1赋给了变量 a,字符 2赋给了变量 b,字符CR即回车赋给了变量 c,字符 3赋给了变量 d。因此打印输出的结果为选项 D。2.if语句的基本形式是:if(表达式
18、)语句,以下关于“表达式”值的叙述中正确的是_。(分数:1.00)A.必须是逻辑值B.必须是整数值C.必须是正数D.可以是任意合法的数值 解析:解析 if 语句中的表达式可以是任意合法的数值,如常量、变量表达式。所以 D选项正确。3.有以下程序: #include stdio.h #define FNA(x) x*x #define FNB(x) x+z main() int a=2,b=4; printf(“%d,%d/n“,FNA(FNB(a),FNB(FNA(b); 程序运行后的输出结果是_。(分数:1.00)A.8,16B.16,32C.8,32 D.16,16解析:解析 带参数的宏定
19、义不是进行简单的字符串替换,而是要进行参数替换不计算,只是进行简单的替换。替换过程是:用宏调用提供的实参字符串,直接置换宏定义命令行中相应形参字符串,非形参字符保持不变。FNA(FNB(a)的替换过程为:FNA(2+2)替换为 2+22+2,计算结果为 8。FNB(FNA(b)的替换过程为:FNB(4*4)替换为 44+44=32。程序运行后的输出结果是 8,32,故 C选项正确。4.以下程序的输出结果是_。 void fun(int*a, int i, int j) int t; if(ij) t=ai; ai=aj; aj=t; i+; j-; fun(a, i, j); main() i
20、nt x=2, 6, 1, 8, i; fun(x, 0, 3); for(i=0; i4; i+) printf(“%2d“, xi); printf(“/n“); (分数:2.50)A.1,2,6,8B.8,6,2,1C.8,1,6,2 D.8,6,1,2解析:解析 本题用了函数调用,fun 中 if语句成立则进行 i,j 的交换,用到主函数中则为把下标0、3,1、2 互换,因此,当执行完后 x的数组为 8,1,6,2,故选择 C选项。5.以下关于 switch语句的叙述中正确的是_。(分数:1.00)A.所有 case的标号都应当是连续的B.每个 case语句标号后面可以没有 break
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 二级 语言 分类 模拟 519 答案 解析 DOC
