内容正文:
编写说明:《软件与应用技术考纲百套卷》依据山东省《软件与应用技术类专业知识考试标准》编写,本套试卷共100份,分为三个部分,第一部分是知识点训练卷,每个知识点2份试卷共76份,第二部分是常考题训练卷,每个知识模块2份训练卷共12份,第三个部分是专业综合训练卷,参考历年软件与应用技术类专业真题试卷,编写了12份。
本试卷是《软件与应用技术考纲百套卷》的第5卷,按知识模块1 C语言程序设计知识,3.循环程序设计的两点范围要求编写。其两点要求是:
(1)掌握while循环、do…while循环、for循环和循环嵌套的用法。
(2)了解break语句和continue语句的用法。
山东省《软件与应用技术考纲百套卷》 第5卷
知识模块1 C语言程序设计知识
3.循环程序设计 知识点训练卷
一、单项选择题(本大题共20小题,每题3分,共60分)
1.下面哪个语句可以终止当前循环并跳出循环体?( )
A. break B. continue C. return D. exit
2.下面哪个语句可以跳过当前迭代,开始下一次循环迭代?( )
A. break B. continue C. return D. exit
3.下面哪个循环语句是先判断条件是否满足,再执行循环体?( )
A.while循环 B. for循环 C. do-while循环 D. continue语句
4. 关于 `break` 和 `continue` 语句的说法,下列选项中不正确的是。( )
A. `break` 语句只能在循环体内使用
B. 在循环体内使用 `break` 语句可以使流程跳出本层循环体,从而提前结束本层循环
C. 在 `while` 和 `do...while` 循环中,`continue` 语句并没有使整个循环终止
D. `continue` 的作用是结束本次循环,即跳过本次循环体中余下尚未执行的语句,接着再一次进行循环判断
5. 执行以下程序段后,结果为。( )
x=1;
do {
x=x*x;
} while(!x);
A. 是死循环
B. 循环执行2次
C. 循环执行一次
D. 有语法错误
6. 关于 `while` 和 `do...while` 循环的描述,正确的是。( )
A. `while` 和 `do...while` 循环中的循环体语句都至少被执行一次
B. `do...while` 循环中,`while(表达式)` 后面的分号可以省略
C. `while` 循环体中,一定要有能使 `while` 后面表达式的值变为“假”的操作
D. `do...while` 循环中,根据情况可以省略 `while`
7. 若下述程序运行时输入的数据是 3.6,2.4 (回车),则输出结果是。( )
#include<math.h>
#include<stdio.h>
main() {
float x, y, z;
scanf("%f,%f", &x, &y);
z = x / y;
while (1) {
if (fabs(z) > 1.0) {
x = y;
y = z;
z = x / y;
} else {
break;
}
}
printf("%f", y);
}
A. 1.500000
B. 1.600000
C. 2.000000
D. 2.400000
8. 设有程序段:
int k = 10;
while (k == 1) k = k - 1;
则下面描述中正确的是。( )
A. `while` 循环执行10次
B. 循环是无限循环
C. 循环体语句一次也不执行
D. 循环体语句执行一次
9.C语言中( ).
A.不能使用do…while语句构成的循环
B.do…while语句构成的循环必须用break语句才能退出
C.do…while语句构成的循环,当while语句中的表达式值为非零时结束循环
D. Do…while 语句构成的循环,当while语句中的表达式值为零时结束循环
10. 以下程序的输出结果是。( )
main() {
int y=10;
for(;y>0;y--)
if(y%3==0)
printf("%d",--y);
}
A. 741
B. 852
C. 963
D. 8754321
11. 在下面的程序段中。(