内容正文:
编写说明:2026版《软件与应用技术考纲百套卷》依据2026版山东省《软件与应用技术类专业知识考试标准》编写,本套试卷共100份,分为三个部分,第一部分是知识点训练卷,每个知识点2份试卷共76份,第二部分是常考题训练卷,每个知识模块2份训练卷共12份,第三个部分是专业综合训练卷,参考历年软件与应用技术类专业真题试卷,编写了12份。
本试卷是2026版《软件与应用技术考纲百套卷》的第6卷,按知识模块1 C语言程序设计知识,3.循环程序设计的两点范围要求编写。其两点要求是:
(1)掌握while循环、do…while循环、for循环和循环嵌套的用法。
(2)了解break语句和continue语句的用法。
2026版山东省《软件与应用技术考纲百套卷》 第6卷
知识模块1 C语言程序设计知识
3.循环程序设计 知识点训练卷
一、单项选择题(本大题共20小题,每题3分,共60分)
1. 以下程序段的执行结果是( )
int t, a = 2, b = 3, c = -2;
while (a > b > c) {
t = a; a = b; b = t; c++;}
printf("%d,%d,%d
", a, b, c);
A.2,3,0
B.1,2,3
C.230
D.123
【答案】D
2. 设 `n` 是 `int` 类型变量,执行以下程序段后,输出的 `n` 的值是。( )
int n=0;
while(n++<=2);
printf("%d",n);
A. 2
B. 3
C. 4
D. 有语法错误
【答案】C
3. 执行以下程序后,输出的结果是。( )
#include <stdio.h>
main()
{
int k, m, n;
n = 10; m = 1; k = 1;
while (k <= n) {
m *= 2; k += 3;}
printf("%d
", m);
}
A. 13
B. 14
C. 15
D. 16
【答案】D
4.下面哪个循环语句适合在已知循环次数的情况下使用?( )
A.while循环 B. for循环 C. do-while循环 D. return语句
【答案】B
5.下面哪个循环语句适合在循环次数未知的情况下使用?( )
A. while循环 B. for循环 C. do-while循环 D. exit
【答案】A
6.下列程序段的执行结果是( ).
int n = 10;
while (n > 7) {
n--;
printf("%d,", n);}
A.9,8,7
B.987
C.9 8 7
D.程序错误
【答案】A
7.C语言中while和do-while循环的主要区别是( ).
A.do-while的循环体至少无条件执行一次
B.while的循环控制条件比do-while的循环控制条件严格
C.do-while允许从外部转到循环体内
D.do-while的循环体不能是复合语句
【答案】A
8.下列程序的执行结果是( )
int x = 3;
do {printf("%d,", x -= 2);} while (!(--x));
A.1,-2
B.1 -2
C.-2,1
D.-2 1
【答案】A
9. 下面程序的循环体执行次数为。( )
main() {
int n = 0;
float sum = 0.0;
while (n < 0)
sum += n;
printf("%f", sum);
}
A. 1次
B. 2次
C. 0次
D. 无限循环
【答案】C
10. 执行以下程序段后,输出的结果是。( )
a=1; b=2; c=3;
while(a<b<c) {
t=a; a=b; b=t; c--;
}
printf("%d,%d,%d",a,b,c);
A. 1,2,0
B. 2,1,2
C. 1,2,1
D. 2,1,1
【答案】C
11.下列程序段的执行结果是( )
main() {
int k = 5, n = 0;
while (k > 0)
{switch (k)
{default:break;
case 1:n += k;
case 2:
case 3:n += k;
}
k--;
}
printf("%d
", n);
}
A.5
B.6
C.7
D.8
【答案】C
12. 以下程序的输出结果是。( )
main() {
int i;
for(i=1;i<6;i++)
if(i%2) {
printf("#");
continue;
}
printf("*");
}
A. #*#*#
B. #####
C. *****
D. *#*#*
【答案】A
13.下列程序段的执行结果是( )
main() {
int i;
for (i = 0; i < 3; i++)
switch (i) {
case 1:
printf("%d", i);
case 2:
printf("%d", i);
break;
default:
printf("%d", i);
}
}
A.0112
B.0 1 1 2
C.0,1,1,2
D.程序错误
【答案】C
14. 以下程序段的执行结果是。( )
int i, j, m=0;
for(i=1;i<=15;i+=4)
for(j=3;j<=19;j+=4)
m++;
printf("%d
",m);
A. 12
B. 15
C. 20
D. 25
【答案】C
15. 下列程序段的执行结果是( )
main() {
int i;
for (i = 1; i < 10; i += 2) {
if (i % 3 == 0) printf("*");
Else continue;
printf("#"); }
}
A.*#*#
B.* # * #
C.*#
D.*
【答案】A
16. 下列程序段的执行结果是( )
main() {
int i = 0, s = 0;
do {if (i % 2) {i++;continue;}
i++;s += i;
} while (i < 7);
printf("%d
", s);
}
A.15
B.16
C.17
D.18
【答案】B
17. 下面程序的输出结果是( )
main() {
int i, k=0, a=0, b=0;
for(i=1;i<=4;i++) {
k++;
if(k%2==0) {
a=a+k;
continue;
}
b=b+k;
a=a+k;
}
printf("k=%d a=%d b=%d
",k,a,b);
}
A. k=5 a=10 b=4
B. k=3 a=6 b=4
C. k=4 a=10 b=3
D. k=4 a=10 b=4
【答案】D
18. 以下正确的描述是。( )
A. `continue` 语句的作用是结束整个循环的执行
B. 只能在循环体内和 `switch` 语句体内使用 `break` 语句
C. 在循环体内使用 `break` 语句或 `continue` 语句的作用相同
D. 从多层循环嵌套中退出时,只能使用 `goto` 语句
【答案】B
19. 下列哪个循环结构可以用于重复执行一段代码,直到某个条件不再满足?( )
A. while 循环
B. for 循环
C. do...while 循环
D. 以上都是
【答案】D
20. 下面程序的输出结果是( )
main() {
int i;
for (i = 1; i < 6; i++) {
if (i % 2) {
printf("#");
continue;
}
printf("*");
}
}
A.#*#*#
B.*#*#*
C.*#
D.#*
【答案】A
二、简答题(本大题共5小题,每题6分,共30分)
1.break语句的作用是?
【答案】用在循环中,跳出本层循环,转到该层循环后面的语句。用在switch分支中,跳出该switch语句体。
2.continue语句和break语句的区别是?
【答案】前者只是结束本轮循环,而不是结束整个循环;后者则是结束整个循环。
3.do…while 语句执行的特点是?
【答案】先执行循环体,后判断条件,至少执行一次循环体。
4.for 语句的一般格式。
【答案】
for 语句的一般形式是:
for(表达式1;表达式2;表达式3)
{语句序列;}
5.多重循环的执行过程。
【答案】
执行多重循环时,对外层循环变量的每一个值,内层循环的循环变量都要从初值变化到终值。每执行一次外层循环,内层的循环就要完整执行一遍。
三、编程题(本大题共1小题,共10分)
1.输入一行字符,输出其中字母的个数。
提示:n=0; //计算器n置0
ch=getchar(); //输入第1个字符
while(ch!='
')
{if(ch为英文字母)
n++; //计算器n加1
ch=getchar(); //输入下一个字符
}
【答案】
#include <stdio.h>
main() {
int n = 0;
char ch;
ch = getchar();
while (ch != '
') {
if (ch >= 'a' && ch <= 'z'||ch >= 'A' && ch <= 'Z')
n++;
ch = getchar();
}
printf("%d", n);
}
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$
编写说明:2026版《软件与应用技术考纲百套卷》依据2026版山东省《软件与应用技术类专业知识考试标准》编写,本套试卷共100份,分为三个部分,第一部分是知识点训练卷,每个知识点2份试卷共76份,第二部分是常考题训练卷,每个知识模块2份训练卷共12份,第三个部分是专业综合训练卷,参考历年软件与应用技术类专业真题试卷,编写了12份。
本试卷是2026版《软件与应用技术考纲百套卷》的第6卷,按知识模块1 C语言程序设计知识,3.循环程序设计的两点范围要求编写。其两点要求是:
(1)掌握while循环、do…while循环、for循环和循环嵌套的用法。
(2)了解break语句和continue语句的用法。
2026版山东省《软件与应用技术考纲百套卷》 第6卷
知识模块1 C语言程序设计知识
3.循环程序设计 知识点训练卷
一、单项选择题(本大题共20小题,每题3分,共60分)
1. 以下程序段的执行结果是( )
int t, a = 2, b = 3, c = -2;
while (a > b > c) {
t = a; a = b; b = t; c++;}
printf("%d,%d,%d
", a, b, c);
A.2,3,0
B.1,2,3
C.230
D.123
2. 设 `n` 是 `int` 类型变量,执行以下程序段后,输出的 `n` 的值是。( )
int n=0;
while(n++<=2);
printf("%d",n);
A. 2
B. 3
C. 4
D. 有语法错误
3. 执行以下程序后,输出的结果是。( )
#include <stdio.h>
main()
{
int k, m, n;
n = 10; m = 1; k = 1;
while (k <= n) {
m *= 2; k += 3;}
printf("%d
", m);
}
A. 13
B. 14
C. 15
D. 16
4.下面哪个循环语句适合在已知循环次数的情况下使用?( )
A.while循环 B. for循环 C. do-while循环 D. return语句
5.下面哪个循环语句适合在循环次数未知的情况下使用?( )
A. while循环 B. for循环 C. do-while循环 D. exit
6.下列程序段的执行结果是( ).
int n = 10;
while (n > 7) {
n--;
printf("%d,", n);}
A.9,8,7
B.987
C.9 8 7
D.程序错误
7.C语言中while和do-while循环的主要区别是( ).
A.do-while的循环体至少无条件执行一次
B.while的循环控制条件比do-while的循环控制条件严格
C.do-while允许从外部转到循环体内
D.do-while的循环体不能是复合语句
8.下列程序的执行结果是( )
int x = 3;
do {printf("%d,", x -= 2);} while (!(--x));
A.1,-2
B.1 -2
C.-2,1
D.-2 1
9. 下面程序的循环体执行次数为。( )
main() {
int n = 0;
float sum = 0.0;
while (n < 0)
sum += n;
printf("%f", sum);
}
A. 1次
B. 2次
C. 0次
D. 无限循环
10. 执行以下程序段后,输出的结果是。( )
a=1; b=2; c=3;
while(a<b<c) {
t=a; a=b; b=t; c--;
}
printf("%d,%d,%d",a,b,c);
A. 1,2,0
B. 2,1,2
C. 1,2,1
D. 2,1,1
11.下列程序段的执行结果是( )
main() {
int k = 5, n = 0;
while (k > 0)
{switch (k)
{default:break;
case 1:n += k;
case 2:
case 3:n += k;
}
k--;
}
printf("%d
", n);
}
A.5
B.6
C.7
D.8
12. 以下程序的输出结果是。( )
main() {
int i;
for(i=1;i<6;i++)
if(i%2) {
printf("#");
continue;
}
printf("*");
}
A. #*#*#
B. #####
C. *****
D. *#*#*
13.下列程序段的执行结果是( )
main() {
int i;
for (i = 0; i < 3; i++)
switch (i) {
case 1:
printf("%d", i);
case 2:
printf("%d", i);
break;
default:
printf("%d", i);
}
}
A.0112
B.0 1 1 2
C.0,1,1,2
D.程序错误
14. 以下程序段的执行结果是。( )
int i, j, m=0;
for(i=1;i<=15;i+=4)
for(j=3;j<=19;j+=4)
m++;
printf("%d
",m);
A. 12
B. 15
C. 20
D. 25
15. 下列程序段的执行结果是( )
main() {
int i;
for (i = 1; i < 10; i += 2) {
if (i % 3 == 0) printf("*");
Else continue;
printf("#"); }
}
A.*#*#
B.* # * #
C.*#
D.*
16. 下列程序段的执行结果是( )
main() {
int i = 0, s = 0;
do {if (i % 2) {i++;continue;}
i++;s += i;
} while (i < 7);
printf("%d
", s);
}
A.15
B.16
C.17
D.18
17. 下面程序的输出结果是( )
main() {
int i, k=0, a=0, b=0;
for(i=1;i<=4;i++) {
k++;
if(k%2==0) {
a=a+k;
continue;
}
b=b+k;
a=a+k;
}
printf("k=%d a=%d b=%d
",k,a,b);
}
A. k=5 a=10 b=4
B. k=3 a=6 b=4
C. k=4 a=10 b=3
D. k=4 a=10 b=4
18. 以下正确的描述是。( )
A. `continue` 语句的作用是结束整个循环的执行
B. 只能在循环体内和 `switch` 语句体内使用 `break` 语句
C. 在循环体内使用 `break` 语句或 `continue` 语句的作用相同
D. 从多层循环嵌套中退出时,只能使用 `goto` 语句
19. 下列哪个循环结构可以用于重复执行一段代码,直到某个条件不再满足?( )
A. while 循环
B. for 循环
C. do...while 循环
D. 以上都是
20. 下面程序的输出结果是( )
main() {
int i;
for (i = 1; i < 6; i++) {
if (i % 2) {
printf("#");
continue;
}
printf("*");
}
}
A.#*#*#
B.*#*#*
C.*#
D.#*
二、简答题(本大题共5小题,每题6分,共30分)
1.break语句的作用是?
2.continue语句和break语句的区别是?
3.do…while 语句执行的特点是?
4.for 语句的一般格式。
5.多重循环的执行过程。
三、编程题(本大题共1小题,共10分)
1.输入一行字符,输出其中字母的个数。
提示:n=0; //计算器n置0
ch=getchar(); //输入第1个字符
while(ch!='
')
{if(ch为英文字母)
n++; //计算器n加1
ch=getchar(); //输入下一个字符
}
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$