[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷13及答案与解析.doc

上传人:刘芸 文档编号:497940 上传时间:2018-11-30 格式:DOC 页数:25 大小:67.50KB
下载 相关 举报
[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷13及答案与解析.doc_第1页
第1页 / 共25页
[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷13及答案与解析.doc_第2页
第2页 / 共25页
[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷13及答案与解析.doc_第3页
第3页 / 共25页
[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷13及答案与解析.doc_第4页
第4页 / 共25页
[计算机类试卷]国家二级C语言机试(C语言程序设计)模拟试卷13及答案与解析.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

1、国家二级 C语言机试( C语言程序设计)模拟试卷 13及答案与解析 一、选择题 1 有以下程序段 char name20; int nurn; scanf(“name s nurn d“,name,&nurn); 当执行上述程序段,并从键盘输入: name Lili nurn 1001后, name的值为 ( A) name Lili ( B) Lili nurn ( C) name Lili nurn 1001 ( D) Lili 2 s1和 s2已正确定义并分别指向两个字符串。若要求:当 s1所指串大于 s2所指串时,执行语句 S;则以下选项中正确的是 ( A) if(s1 s2)S; (

2、 B) if(strcmp(s1, s2)S; ( C) if(strcmp(s2, s1) 0)S; ( D) if(strcp(s1, s2) 0)S: 3 把以下四个表达式用作 if语句的控制表达式时,有一个选项与其他三个选项含义不同,这个选项是 ( A) k 2 ( B) k 2=1 ( C) (k 2)! 0 ( D) !k 2 1 4 以下是 if语句的基本形式: if(表达式 )语句 其中 “表达式 ” ( A)必须是逻辑表达式 ( B)必须是关系表达式 ( C)必须是逻辑表达或关系表达 ( D)可以是任意合法的表达式 5 有以下程序 main() int a 0, b 0, c

3、 0, d 0; if(a 1)b 1; c 2; else d 3; printf(“ d, d, d, d n“,a,b,c, d); 程序输出 ( A) 0,0,0,3 ( B) 1,1,2,0 ( C)编译有错 ( D) 0,1,2,0 6 有以下程序 main() int x 1, y 0; if(!x)y; else if(x=0) if(x)y 2; else y 3; printf(“ d n“, y); 程序运行后的输出结果是 ( A) 2 ( B) 0 ( C) 1 ( D) 3 7 若变量已正确定义,在 if(W)printf(“ d n“,k);中,以下不可替代 W的是

4、 ( A) ch getchar() ( B) a=b+c ( C) a b c ( D) a 8 有以下程序段 int a,b,c; a 10; b 50; c 30; if(a b)a b, b c; c a; printf(“a d b d c d n“, a,b,c); 程序的输出结果是 ( A) a 10 b 50 c 30 ( B) a 10 b 30 c 10 ( C) a 10 b 50 c 10 ( D) a 50 b 30 c 50 9 设有定义: int a 1, b 2, c 3;以下语句中执行效果与其它三个不同的是 ( A) if(a b)c a; a b; b c;

5、 ( B) if(a b)c a, a b, b c; ( C) if(a b)c a, a b, b c; ( D) if(a b)c a; a b; b c; 10 if语句的基本形式是: if(表达式 )语句,以下关于 “表达式 ”值的叙述中正确的是 ( A)必须是整数值 ( B)必须是正数 ( C)可以是任意合法的数值 ( D)必须是逻辑值 11 有如下嵌套的 if语句 if(a b) if(a c)k a; else k c; else if(b c)k b; else k c; 以下选项中与上述 if语句等价的语句是 ( A) k (a b)?(bc)?b: c; ( B) k (

6、a c)?b: c; ( C) k (a c) ?a: c; ( D) k (a b)?(a c)?a: c): (b c)?b: c); 12 有以下计算公式 若程序前面已经在命令行中包含 math.h文件,不能够正确计算上述公式的程序段是 ( A) y sqrt(x); if(x 0)y sqrt( x); ( B) if(x 0)y sqrt(x); else y sqrt( x); ( C) if(x 0)y sqrt(x); if(x 0)y sqrt( x); ( D) y sqrt(x 0?x: -x); 13 有以下程序 #include main()int x; scanf(

7、“ d“, x); if(x 3); else if(x!10)printf(“ d n“, x); 程序运行时,输入的值在哪个范围才会有输出结果 ( A)不等于 10的整数 ( B)大于 3或等于 10的整数 ( C)小于 3的整数 ( D)大于 3且不等 10的整数 14 有以下程序 main() int a 1, b 2, c 3, d 0; if(a=1 &b =2) if(b! 2c ! 3) printf(“ d, d, d n“, a, b, c); else printf(“ d, d, d n“, a, b, c); else printf(“ d, d, d n“, a,

8、b, c); 程序运行后的输出结果是 ( A) 1,3, 2 ( B) 1, 2, 3 ( C) 1, 3, 3 ( D) 3, 2, 1 15 下列条件语句中,输出结果与其他语句不同的是 ( 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 print

9、f(“ d n“, y); 16 若有以下程序 #include 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,4 ( C) 5,1,2, 1 ( D) 1,2,3,4 17 若有以下程序 #inelude 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

10、3; else; if(d=4)r 4; printf(“ d n“, r); 则程序的输出结果是 ( A) 10 ( B) 6 ( C) 7 ( D) 3 18 若有 以下程序 #inelude main() int a 1, b 2, c 3, d 4; if(a 2)&(b 1)c 2; if(c=3)(d 1)a 5; pfintf(“ 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 19 若有以下程序 main() int a

11、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 20 以下叙述中正确的是 ( A) if语句只能嵌套一层 ( B)不能在 else子句中再嵌套 if语句 ( C) if子句和 else子句中可以是任意的合法的 C语句 ( D)改变 if-else语句的缩进格式,会改变程序的执行流程 21 以下选项中与 if(a=1)a b; else a;语句功 能不同的 swit

12、ch语句是 ( 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) switch(a=1) case 1: a b; break; case 0: a; 22 若以下选项中变量全部为整型变量,且己正确定义并赋值,则语法正确的switch语句是 ( A) switch(a b) case 1: case 3: y a b; break; case 0: case

13、 4: y a b; ( B) switch(a*a b*b) default: break; case 3: y a b; break; case 2: y a b: break; ( C) switch(a 9) case c1: y a b; case c2: y a b; ( D) switch a*b case 10: x a b; default: y a b; 23 有以下程序 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:

14、 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 24 若有定义: float x 1 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(“*

15、 n“); ( C) switch(x)case 1 0: printf(“* n“); case 2 0: printf(“* n“); ( D) switch(a b)case 1: printf(“* n“); case c: printf(“* n“); 25 下列叙述中正确的是 ( A)在 switch语句中必须使用 default ( B) break语句必须与 switch语句中的 case配对使用 ( C)在 switch语句中,不一定使用 break语句 ( D) break语句只能用于 switch语句 26 有以下程序 main() int k 5, n 0; do sw

16、itch(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(k 0&n 5) 运行以后的输出结果是 ( A) 0235 ( B) 235 ( C) 02356 ( D) 2356 27 以下选项中与 if(a=1)a b; else a;语句功能不同的 switch语句是 ( A) switch(a=1)case 0: a b; break; case 1: a; ( B) switch(a)case 1: a b; break;

17、 default: a; ( C) switch(a)default: a; break; case 1: a b; ( D) switch(a=1)case 1: a b; break; case 0: a; 28 有以下程序 #include 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; printf(“a d, b d n“, a, b); 程序运行后的输出结果是 ( A) a 1, b 1 ( B) a

18、 1, b 0 ( C) a 2, b 1 ( D) a 2, b 2 29 若以下选项中的变量 a, b, y均已正确定义并赋值,则语法正确的 switch语句是 ( A) switch(a*a b*b)default: break; case 3: y a b; break; case 2: y ab; break; ( B) switch(a b)case1: case3: y a b; break; case0: case4: y a b; ( C) switch(a 9)case a: y a b; case b: y a b; ( D) switch a*b case 10: y

19、a b; default: y a b; 30 在嵌套使用 if语句时, C语言规定 else总是 ( A)和之前与其具有相同缩进位置的 if配对 ( B)和之前与其最近的 if配对 ( C)和之前与其最近的且不带 else的 if配对 ( D)和之前的第一个 if配对 31 以下程序段中,与语句: k a b?(b c?1: 0): 0;功能相同的是 ( A) if(a b)(b c)k 1; else k 0; ( B) if(a b)k 0; else if(b c)k 1; ( C) if(a b) (b c)k 1; else k 0; ( D) if(a b)k 1; else i

20、f(b c)k 1; else k 0; 32 关于 “while(条件表达式 )循环体 ”,以下叙述正确的是 ( A)循环体的执行次数总是比条件表达式的执行次数多一次 ( B)条件表达式的执行次数与循环体的执行次数一样 ( C)条件表达式的执行次数 总是比循环体的执行次数多一次 ( D)条件表达式的执行次数与循环体的执行次数无关 33 有以下程序 #include main0 int y 10; while(y-); printf(“y d n“, y); 程序执行后的输出结果是 ( A) y 0 ( B) y 1 ( C) y 1 ( D) while构成无限循环 34 有以下程序 mai

21、n() int k 5; while(-k) printf(“ d“, k 3); printf(“ n“); 执行后的输出结果是 ( A) 2 ( B) 4 ( C) 1 ( D)死循环 35 有以下程序 main0 int y 10; while(y-); printf(“y d n“, y); 程序执行后的输出结果是 ( A) y 0 ( B) y 1 ( C) y 1 ( D) while构成无限循环 36 有以下程序 #include void main() int s; scanf(“ d“, s); while(s 0) switch(s) case 1: printf(“ d“

22、, s 5); case 2: printf(“ d“, s 4); break; case 3: printf(“ d“, s 3); default: printf(“ d“, s 1); break; scanf(” d t, &s); 运行时,若输入 1 2 3 4 5 0,则输出结果是 ( A) 66656 ( B) 6566456 ( C) 66666 ( D) 6.66666e+006 国家二级 C语言机试( C语言程序设计)模拟试卷 13答案与解析 一、选择题 1 【正确答案】 D 【试题解析】 在题目中以字符串的形式给字符数组赋值,所以字符数组 n锄 e的值为 Lili。 【

23、知识模块】 C语言程序设计 2 【正确答案】 D 【试题解析】 字符串标记使用 strcmp函数,该函数有两个参数分别是需要比较大小的两个字符串 s1和 s2,如果 s1大于 s2则返回值大于 0,如果 s1小于 s2则返回值小于 0,否则 s1和 s2相同返回 0。题目要求 s1大于 s2时执行语句 S,因此strcmp(s1, s2)的返回值大于 o时执行 S。 【知识模块】 C语言程序设计 3 【正确答案】 D 【试题解析】 本题考查 if语句和 if语句构成的选择。选项 A表示 k除以 2的余数,如果余数为 1则 if成立,否则不能成立,即 if判断 k是否为奇数;选项 B是判断 k除

24、以 2的余数是否等于 1,函数和选项 A相同:选项 C表示 k除以 2的余数不为 0,和选项 A一致;选项 D中, !运算符优先级高于预算符,先计算 !k,然后再取余数,并判断余数是否等于 1。 【知识模块】 C语言程序设计 4 【正确答案】 D 【试题解析】 本题考查 if语句, C语言中 if语句中的表达式可以是任意合法的表达式。 【知识模块】 C语言程序设计 5 【正确答案】 C 【试题解析】 if语句的格式为: if(表达式 )语句 1 else 语句 2 if和 else是 C语言的关键字。 “语句 1”称为 if子句, “语句 2”称为 else子句,这些子句只允许为一条语句,若需

25、要多条语句时,则应该使用复合语句。因此题目 if(a 1)b 1: c 2: else d 3; if分支有两条 语句,没构成复合语句。 【知识模块】 C语言程序设计 6 【正确答案】 B 【试题解析】 x 1, if和 else if的条件都不满足,故 y值不改变输出。 【知识模块】 C语言程序设计 7 【正确答案】 C 【试题解析】 在 if()语句的括号是一个合法的 C语言表达式即可,如果表达式的值为 0,则不执行 if语句,否则执行 if语句,而在选项 C中,符号 不是 C语言的合法运算符,如果要表达 a大于或小于 b c可用 a! b c或 (a b c)(a bc来表达,而不能使用

26、 a b+c。 所以它不是一个合法的 C语言表达式。 【知识模块】 C语言程序设计 8 【正确答案】 C 【试题解析】 本题的程序段首先定义三个整型变量 a, b, c,并且其初始值分别等于 10, 50, 30,然后判断 a b是否成立,如果条件成立,则把 b的值赋给 a,把 c的值赋给 b。由 a和 b的初始值可知,此条件表达式不成立,所以 a和 b的值保持不变。再执行下一条语句,把 a的值赋给 c,所以 c的当前值等于 10,最后由输出语句输出变量 a, b, c的当前值,分别为 10, 50, 10。 【知识模块】 C语言程序设计 9 【正 确答案】 A 【试题解析】 在 C语言中,用

27、分号表示一条语句的结束,用 把几条语句放在一块表示一个语句块,其整体表示一个功能。因而在题目给出的四个选项中,选项B、 C、 D表示的功能相同,而选项 A表示的是一条 if语句,两条赋值语句。 【知识模块】 C语言程序设计 10 【正确答案】 C 【试题解析】 在 if语句中,表达式可以是任意合法的数值。当其值为非零时,执行 if语句,为 0时执行 else语句。 【知识模块】 C语言程序设计 11 【正确答案】 D 【试题解析】 嵌套的 if else语句的含义是,在变量 a的值小于变量 b的值,同时,变量 a的值小于变量 c的值时,把变量 a的值赋给变量 k。在变量 a的值小于变量 b的值

28、,同时,变量 a的值大于等于变量 c的值时,把变量 c的值赋给变量k。在变量 a的值大于等于变量 b的值,同时,变量 b的值小于变量 c的值时,把变量 b的值赋给变量 k。在变量 a的值大于等于变量 b的值,同时,变量 b的值大于等于变量 c的值时,把变量 c的值赋给变量 k。 【知识模块】 C语言程序设计 12 【正确答案】 A 【试题解析】 由题意可知计算公式的含义是:当 x大于等于 0时, y值等于 x的算术平方根:当 x小于 0时, y值等于 x的相反数的算术平方根。所以选项 B用一个完整的 if else语句表达了计算公式的含义;选项 C用两个 if语句表达了计算公式的含义;选项 D

29、在求平方根函数的后面用 x0?x: x条件表达式来表达了计算公式的含义。选项 A没有用 C语言语句正确的表达计算公式的含义。 【知识模块】 C语言程序设计 13 【正确答案】 D 【试题解析】 题目中,虽然 else和第二个 if不在同一行上,但等价于在同一行上,因此,程序的意思是当 x大于 3且不等于 10时打印出来。 【知识模块】 C语言程序设计 14 【正确答案】 C 【试题解析】 a,b,c,d初始值分别为 1,2,3,0。嵌套的 if语句中,第一个 if中,表达式 a 1&b =2值为 1,执行嵌套的 if分支,此时 b 3, b! 2成立,由于运算符是 ,不管后面一个表达式的值是不

30、是 1,其整个表达式的值总是 1, c-! 3表达式不执行,最后打印出 a,b,c的值是 1, 3, 3。 【知识模块】 C语言程序设计 15 【正确答案】 A 【试题解析】 选项 B、 C、 D这三条语句都是在变量不等于 0的情况下, 输出x;等于 0的情况下输出 y,而选项 A则正好相反。 【知识模块】 C语言程序设计 16 【正确答案】 B 【试题解析】 代码中有两条并列的 if语句,第一条 if语句执行, (a 2)(b 1)值为 1,由于逻辑或表达式,根据其短路运算规则, a 2, b 2,即 b值不变执行 if分支 c 2。并列的 if语句中表达式 (c=3)&(d 1)为逻辑与表

31、达式, c=3不成立,不考虑 d 1表达式, d为 5逻辑表达式值为 0,不执行相应 if分支。 【知识模块】 C语言程序设计 17 【正确答案】 C 【试题解析】 程序代码中有四条并列的 if语句,第一条 if表达式 a! 1不成立,执行 else分支, r 1;第二条 if表达式 b=2成立,执行 r 2, r 3;第三条 if语句 c! 3不成立,执行 else分支,分支为空语句;第四条 if分支 d=4成立,执行该 if分支语句, r 4, r 7。 【知识模块】 C语言程序设计 18 【正确答案】 D 【试题解析】 代码中有两条并列的 if语句,第一条 if语句,逻辑与表达式 (a2

32、)&(b 1)中, a 2,则执行 b 1,得到该逻辑与表达式值为 1,执 行分支语句c 2;第二条 if语句 (c=3)(d 1), c=3不成立,执行 d 1,而后得出整个逻辑与表达式值为 1,执行分支语句 a 5。 【知识模块】 C语言程序设计 19 【正确答案】 B 【试题解析】 程序代码中有四条并列的 if语句,第一条 if表达式 a! 1不成立,执行 else分支, r=l;第二条 if表达式 b=2成立,执行 r 2, r 3:第三条 if语句 c! 3不成立,执行语句 r 3, r 6:第四条 if分支 d=4成立,执行该 if分支语句, r 4, r 10。 【知识模 块】

33、C语言程序设计 20 【正确答案】 C 【试题解析】 含 else子句的 if语句的格式为 if(表达式 ) 语句 1 else 语句 2 其中 if和 else是 C语言的关键字。 “语句 1”称为 if子句, “语句 2”称为 else子句,这些子句只允许为一条语句,若需要多条语句时,则应该使用复合语句,对于 if和 else语句的嵌套原则是比较自由的。 【知识模块】 C语言程序设计 21 【正确答案】 B 【试题解析】 本题主要考查 if和 switch结构。 if(a=1)a b; else a ;代码段的功能是如果 a等于则把 b的值赋值给 a,否则 a。选项 A使用 switch对

34、 a进行判断,如果是 1则 a b,跳出 switch,如果是其他值则 a;选项 B对 a=1的结果进行 switch判断,如果为 0表示 a不等于 1则 a b,和题目要求不符合:选项 C和选项 A一样;选项 D和选项 case条件相反,满足题目要求。 【知识模块】 C语言程序设计 22 【正确答案】 B 【试题解析】 本题考查 switch的使用。选项 A中的 case 0和 case 4没有 break语句;选项 B正确;选项 C中的 case后 面不是常量,错误;选项 D中 switch后面没有括号。 【知识模块】 C语言程序设计 23 【正确答案】 D 【试题解析】 本题考查的是用

35、switch语句实现多分支选择结构,首先进入第一个 switch(x)判断,进入 case 1中进行嵌套判断,如果 switch(y)也成立, a自加 1,遇到 break,退出嵌套,接着执行 case 2, a自加为 2, b自加为 1,遇到 break,结束循环,此时 a 2, b 1。 【知识模块】 C语言程序设计 24 【正确答案】 A 【试题解析】 在 C语言中 , switch()后一对圆括号中的可以是整型表达式或字符表达式。 case语句后面的常量表达式的类型必须与 switch后圆括号中的表达式类型相同,各 case语句标号的值应该互不相同,选项 B中 switch后括号表达式

36、出错,选项 C中 case后面的常量类型不正确,选项 D中 case后面出现了变量表达式,所以 D不正确。 【知识模块】 C语言程序设计 25 【正确答案】 C 【试题解析】 break为 C语言关键字,又称间断语句。 break语句的功能是跳出正在执行的条件语句或循环语句。它可以出现在 switch语句中,也可以出现在循环语句中。 default是关键字,起标号的作用,代表所有 case标号之外的那些标号。 default标号可以出现在语句体中任何标号位置上。在 switch语句体中也可以没有 default标号。 【知识模块】 C语言程序设计 26 【正确答案】 B 【试题解析】 因为变量

37、的初始值分别为 k 5,n 0,所以程序第 1次进入循环时,执行 default语句, n 0,k 4,没有 break语句,因此执行 case 2分支语句,n为 2, k为 3,程序进行第 2次循环,执行 case 3: n 3, k 2,输出 n值为 3,程序进行第 3次循环,执行 case 3这个分支,结果是 n 5, k 1,打印出 5;这时因为 n 5不满足 n 5的循环条件,因此退出循环,程序运行结束。 【知识模块】 C语言程序设计 27 【正确答案】 A 【试题解析】 ifelse语句的含义是,如果变量 a的值等于 1,则把变量 b的值赋给变量 a,否则,变量 a的值加 1。在本

38、题的 4个选项中,与其含义不同的是选项A,表示如果变量 a的值等于 1,则把变量 a的值加 1,否则,把变量 b的值赋给变量 a。 【知识模块】 C语言程序设计 28 【正确答案】 C 【试题解析】 本题考查的是用 switch语句实现多分支选择结构,首先进入第一个 switch(x)判断,进入 case 1中进行嵌套判断,如果 switch(y)也成立, a自加 1,遇到 break,退出嵌套,接着执行 case 2, a自加为 2, b自加为 1,遇到 break,结束循环,此时 a 2, b 1。 【知识模块】 C语言程序设计 29 【正确答案】 A 【试题解析】 使用 switch语句

39、直接处理多个分支,其一般形式为: switch(表达式 ) case常量表达式 1: 语句 1: break; case常量表达式 2: 语句 2: break; case常量表达式 n: 语句 n: break; default: 语句 n 1: break: switch语句的执行流程是:首先计算 switch后面圆括号中表达式的值,然后用此值依次与各个 case的常量表达式比较,若圆括号中表达式的值与某个 case后面的常量表达式的值相等,就执行此 case后面的语句,执行后遇 breal(语句就退出switch语句:若圆括号中表达式的值与所有 case后面的常量表达式都不等,则执行 d

40、efault后面的语句 n+l,然后退出 switch语句。 对于选项 B, case语句和常量之间没有空格,而选项 C中的 case后面为变量,选项 D中 switch后面没给出圆括号。 【知识模块】 C语言程序设计 30 【正确答案】 C 【试题解析】 本题考查 if语句,在 C语言中, else总是和之前与其最近的且不带else的 if配对。 【知识模块】 C语言程序设计 31 【正确答案】 C 【试题解析】 题干中的表达式的功能是当 a b并且 b c时,变量 k的值等于1,其余情况下,变量 k的 值都是等于 0。 【知识模块】 C语言程序设计 32 【正确答案】 C 【试题解析】 w

41、hile语句中表达式是循环条件,语句为循环体。 while语句中当表达式计算的值为真 (非 0)时,执行循环体语句。因此条件表达式执行的次数总是比循环体多一次。 【知识模块】 C语言程序设计 33 【正确答案】 B 【试题解析】 在 while循环中每次变量 y的值减 1,直到其值等于 0时退出循环,这时 y的再减 1变为 1。 【知识模块】 C语言程序设计 34 【正确答案】 C 【试题解析 】 在程序语句中, k的初始值为 5,进行第 1次 while循环后, k自减1为 4,非 0,执行循环体里的 printf语句,输出 1,此时 k的值变为 1。程序执行第 2次循环时, k自减 1变为

42、 0,为假,退出 while循环语句。所以程序的最后结果为 1。 【知识模块】 C语言程序设计 35 【正确答案】 C 【试题解析】 while循环语句的循环体为空语句,所以每一次循环程序什么都不做。当循环自变量 y 0时,退出循环结束,变量 y执行自减运算,得 1,所以打印输出变量 y的值为 1。 【知识模块】 C语言程序设 计 36 【正确答案】 B 【试题解析】 这道试题主要考查了 switch和 break(语句,当变量 s的值为 1时,执行 case1、 case 2两条语句,输出 65;当变量 s的值为 2时,执行 case 2语句,输出 6;变量 s的值为 3时,执行 case3、 default两条语句,输出 64;变量 s的值为 4时,执行 deflault语句,输入 5;变量 s的值为 5时,执行 default语句,输出6;变量 s的值为 0时,程序运行结束。 【知识模块】 C语言程序设计

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1