[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷32及答案与解析.doc
《[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷32及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷32及答案与解析.doc(23页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级 C语言机试( C语言程序设计)模拟试卷 32及答案与解析 一、选择题 1 以下是 if语句的基本形式: if(表达式 )语句 其中 “表达式 ” ( A)必须是逻辑表达式 ( B)必须是关系表达式 ( C)必须是逻辑表达或关系表达 ( D)可以是任意合法的表达式 2 有以下程序 main()int a=0, b=0, c=0, d=0; if(a=1)b=1; c=2; else d=3; printf(“ d, d,或 d n“, a, b, c, d), 程序输出 ( A) 0, 0, 0, 3 ( B) 1, 1, 2, 0 ( C)编译有错 ( D) 0, 1, 2, 0 3
2、 有以下程序 main()int x=1, y=0; if(!x)y+; else if(x0) if(x)y+=2; else y+=3; printf(” d 11”, y); 程序运行后的输出结果是 ( A) 2 ( B) 0 ( C) 1 ( D) 3 4 若变量已正确定义,在 if(W)pfintf(” d 11”, k);中 ,以下不可替代 W的是 ( A) ch=getchar(1 ( B) a-b+c ( C) ab)a=b, b=c; c=a; printf(“a= d b= d c= d n“, a, b, c); 程序的输出结果是 ( A) a=10 b=50 c=30
3、( B) a=10 b=30 c=10 ( C) a=10 b=50 c=10 ( D) a=50 b=30 c=50 6 设有定义: int a=1, b=2, c=3;以下语句中执行效果与其它三个不同的是 ( A) if(ab)c=a; a=b; b=c; ( B) if(ab)c=a, a=b, b=c; ( C) if(ab)c=a, a=b, b=c; ( D) if(ab)c=a; a=b; b=c; 7 if语句的基本形式是: if(表达式 )语句,以下关于 “表达式 ”值的叙述中正确的是 ( A)必须是整数值 ( B)必须是正数 ( C)可以是任意合法的数值 ( D) if(a
4、b)c=a; a=b; b=c; 8 有 如下嵌套的 if语句 if(a=0)y=sqrt(x); else y=sqrt(-x); ( C) if(x=0)y=sqrt(x); if(x=07x: -x); 10 有以下程序 #include main()int x; scanf(“ d“, &x); if(x main()int a=1, b=2, c=3, d=4; if(a=2)(b=1)c=2; if(c=3)&(d=-1)a=5; printf(“ d, d, d, d n“, a, b, c, d); 则程序的输出结果是 ( A) 2, 1, 2, -1 ( B) 2, 2, 2
5、, 4 ( C) 5, 1, 2, -1 ( D) 1, 2, 3, 4 14 若有以下程序 #include main()int a=1, b=2, c=3, d=4, r=0; if(a!=1); else r=1; if(b=2)r+=2; else; if(c!=3)r+=3; else; if(d=4)r+=4; printf(“ d n“, r); 则程序的输出结果是 ( A) 10 ( B) 6 ( C) 7 ( D) 3 15 若有以下程序 #include main()int a=1, b=2, c=3, d=4; if(a=2)&(b=1)c=2; if(c=3)(d=-1
6、)a=5; printf(“ d, d, d, d n“, a, b, c, d); 则程序的输出结果是 ( A) 2, 1, 2, -1 ( B) 2, 2, 2, 4 ( C) 1, 2, 3, 4 ( D) 5, 1, 2, -1 16 若有以下程序 main()int a=1, b=2, c=3, d=4, r=0; if(a!=1); else r=1; if(b=2)r+=2; if(c!=3); r+=3; if(d=4)r+=4; printf(“ d n“, r); 则程序的输出结果是 ( A) 7 ( B) 10 ( C) 6 ( D) 3 17 以下叙述中正确的是 ( A
7、) if语句只能嵌套一层 ( B)不能在 else子句中再嵌套 if语句 ( C) if子句和 else子句中可以是任意的合法的 C语句 ( D)改变 if-else语句的缩进格式,会改变程序的执行流程 18 以下选项中与 if(a=1)a=b; else a+;语句功能不同的 switch语句是 ( A) switch(a) case 1: a=b: break; default: a+: ( B) switch(a=1) case 0: a=b; break; case 1: a+; ( C) switch(a) default: a+; break; case 1: a=b; ( D)
8、switch(a=1) case 1: a=b; break; case 0: a+; 19 若以下选项中变量全部为整型变量,且 已正确定义并赋值,则语法正确的switch语句是 ( A) switch(a+b) case 1: case 3: y=a+b; break; case 0: case 4: y=a-b: ( B) switch(a*a+b*b) default: break; case 3: y=a+b; break; case 2: y=a-b; break: 1 ( C) switch(a+9) case c1: y=a-b; case c2: y=a+b; ( D) swi
9、tch a*b case 10: x: a+b; default: y=a-b; 20 有以下程序 main()int x=1, y=0, a=0, b=0; switch(x) case 1: switch(y) case 0: a+; break; case 1: b+; break; case 2: a+; b+; break; case 3: a+; b+; printf(“a= d, b= d n“, a, b); 程 序的运行结果是 ( A) a=2, b=2 ( B) a=1, b=1 ( C) a=1, b=0 ( D) a=2, b=1 21 若有定义: float x=1
10、5; int a=1, b=3, c=2;则正确的 switch语句是 ( A) switch(a+b)case 1: printf(“* n“); case 2+1: printf(“* n“); ( B) switch(int)x); case 1: printf(“* n“); case 2: printf(“* n“); ( C) switch(x)case 1 0: printf(“* n“); case 2 O: printf(“* n“); ( D) switch(a+b)case 1: printf(“* n“); case c: printf(“* n“); 22 下列叙述中
11、正确的是 ( A)在 switch语句中必须使用 default ( B) break语句必须与 switch语句中的 case配对使用 ( C)在 switch语句中,不一定使用 break语句 ( D) break语句只能用于 switch语句 23 有以下程序 main()int k=5, n=0; doswitch(k) case 1: case 3: n+=1; k-; break; default: n=0; k-; case 2: case 4: n+=2; k-; break; printf(“ d“, n); while(k0&nb?(bc?1: 0): 0;功能相同的是 (
12、 A) if(ab)(bc)k=1; else k=0; ( B) if(ab)&(bc)k=1; else k=0; ( D) iffab)k=1; else if(bc)k=1; else k=0; 29 关于 “while(条件表达式 )循环体 ”,以下叙述正确的是 ( A)循环体的执行次数总是比条件表达式的执行次数多一次 ( B)条件表达式的执行次数与循环体的执行次数一样 ( C)条件表达式的执行次数总是比循环体的执行次数多一次 ( D)条件表达式的执行次数与循环体的执行次数无关 30 有以下程序 #include main()int y=10; while(y-); printf(“
13、y= d n“, y); 程序执行后的输出结果是 ( A) y=0 ( B) y=-1 ( C) y=1 ( D) while构成无限循环 31 有以下程序 main()int k=5; while(-k) printf(“ d“, k-=3); printf(“ n“); 执行后的输出结果是 ( A) 2 ( B) 4 ( C) 1 ( D)死循环 32 有以下程序 main()int y=10; while(y-); printf(“y= d n“, y); 程序执行后的输出结果是 ( A) v=0 ( B) y=1 ( C) y=-1 ( D) while构成无限循环 33 有以下程序
14、#include void main() int s; scanf(“ d“, &s); while(s0) switch(s) case 1: printf(“ d“, s+5); case 2: printf(“ d“, s+4); break; case 3: printf(“ d“, s+3); default: printf(“ d“, s+1); break; scanf(“ d“, &s); 运行时,若输入 1 2 3 4 5 0,则输出结果是 ( A) 66656 ( B) 6566456 ( C) 66666 ( D) 6666656 34 有以下程序 #include ma
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 语言 语言程序设计 模拟 32 答案 解析 DOC
