内容正文:
编写说明:2027版山东省春季高考统一考试软件与应用技术类《考纲百套卷》,依据《软件与应用技术类专业知识考试标准》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共85份试卷,其中知识训练卷48份、专题训练卷25份、课程综合卷12份。
本试卷是第7卷,为知识训练卷,按《C语言程序设计知识》中“break语句与continue语句”范围和要求编写。具体内容为:(2)理解break语句和continue语句的用法。
山东省春季高考统一考试
软件与应用技术类《考纲百套卷》
第7卷 C语言程序设计知识——break语句与continue语句
(考试时间:45分钟 满分:100分)
一、选择题(共20题,每题3分,共60分)
1.在循环结构中,break语句的作用是( )
A.立即结束所在的循环
B.跳过本次循环
C.重新执行循环条件
D.结束整个程序
【答案】A
【解析】break会立即结束它所在的最内层循环,执行循环后面的语句;它不会只跳过本次循环,也不一定结束整个程序。
2.在循环结构中,continue语句的作用是( )
A.结束程序
B.跳过本次循环剩余语句,进入下一次循环判断
C.重新执行循环初始化语句
D.结束整个循环
【答案】B
【解析】continue跳过本次循环体中后面的语句,转入下一次循环;在for循环中还会先执行更新表达式。
3.执行下列程序后,输出结果是( )
int i;
for (i = 1; i <= 5; i++) {
if (i == 3)
break;
printf("%d", i);
}
A.12345
B.1245
C.123
D.12
【答案】D
【解析】i为1、2时输出;i等于3时执行break,直接结束循环,因此输出12。
4.执行下列程序后,输出结果是( )
int i;
for (i = 1; i <= 5; i++) {
if (i == 3)
continue;
printf("%d", i);
}
A.1235
B.12345
C.1245
D.12
【答案】C
【解析】i等于3时执行continue,跳过本次printf;其他数值正常输出,所以结果为1245。
5.关于break和continue的说法,正确的是( )
A.break结束循环,continue只跳过本次循环剩余部分
B.break和continue作用完全相同
C.break只用于if语句
D.continue会结束整个程序
【答案】A
【解析】break用于结束所在的循环,continue只结束本次循环体的剩余执行,两者作用不同。
6.执行下列程序后,i的值是( )
int i = 0;
while (i < 5) {
i++;
if (i == 3)
break;
}
A.2
B.3
C.4
D.5
【答案】B
【解析】i依次加为1、2、3;i等于3时执行break,循环结束,因此i的值为3。
7.执行下列程序后,输出结果是( )
int i = 0;
while (i < 5) {
i++;
if (i % 2 == 0)
continue;
printf("%d", i);
}
A.12345
B.15
C.135
D.24
【答案】C
【解析】i为2、4时执行continue,不输出;i为1、3、5时输出,因此结果为135。
8.在嵌套循环中,break语句通常结束( )
A.所在的最内层循环
B.最外层循环
C.整个程序
D.所有循环
【答案】A
【解析】break只结束它所在的最内层循环,外层循环仍可继续执行。
9.执行下列程序后,输出结果是( )
int i, j;
for (i = 1; i <= 2; i++) {
for (j = 1; j <= 3; j++) {
if (j == 2)
break;
printf("%d", j);
}
}
A.123123
B.1212
C.1122
D.11
【答案】D
【解析】每次进入内层循环时j=1并输出1,j=2时break只结束内层循环;外层循环共两次,所以输出11。
10.执行下列程序后,输出结果是( )
int i, j;
for (i = 1; i <= 2; i++) {
for (j = 1; j <= 3; j++) {
if (j == 2)
continue;
printf("%d", j);
}
}
A.1122
B.1313
C.123123
D.13
【答案】B
【解析】每次内层循环中j为2时跳过输出,j为1和3时输出;外层循环两次,所以结果为1313。
11.在for循环中执行continue后,通常会先执行( )
A.循环外第一条语句
B.循环体第一条语句
C.循环更新表达式
D.循环初始化表达式
【答案】C
【解析】for循环执行continue后,会跳过本次循环体剩余语句,先执行更新表达式,再判断循环条件。
12.执行下列程序后,sum的值是( )
int i;
int sum = 0;
for (i = 1; i <= 5; i++) {
if (i == 3)
continue;
sum += i;
}
A.15
B.3
C.9
D.12
【答案】D
【解析】continue跳过i等于3时的累加,sum=1+2+4+5=12。
13.执行下列程序后,输出结果是( )
int i;
for (i = 1; i <= 5; i++) {
if (i > 2)
break;
printf("%d", i);
}
printf("%d", i);
A.123
B.123
C.1233
D.1234
【答案】A
【解析】i=1、2 时,i>2不成立,循环内依次输出 1、2;
执行i++后 i=3,满足i>2,执行break跳出循环,循环内部 printf 不再执行;
循环外输出 i 的值 3,最终整体输出:123。
14.下列语句中,continue使用位置正确的是( )
A.continue(x);
B.if (x > 0) continue;
C.printf("continue");
D.int continue = 1;
【答案】B
【解析】continue 为循环控制关键字,不能作为函数调用,也不能作为变量名。A 错误当作函数调用;C 未使用 continue;D 用关键字定义变量;只有 B 用法正确
15.执行下列程序后,输出结果是( )
int i = 1;
while (i <= 5) {
if (i == 4)
break;
printf("%d", i);
i++;
}
A.234
B.1245
C.1234
D.123
【答案】D
【解析】i为1、2、3时输出并递增;i等于4时执行break,循环结束,所以输出123。
16.执行下列程序后,输出结果是( )
int i = 0;
while (i < 5) {
i++;
if (i == 2)
continue;
printf("%d", i);
}
A.1345
B.15
C.12345
D.1245
【答案】A
【解析】i等于2时跳过printf,其他值1、3、4、5正常输出,因此结果为1345。
17.在循环体中使用break后,程序通常执行( )
A.循环体开头语句
B.循环后面的语句
C.程序入口语句
D.循环更新表达式后再无条件循环
【答案】B
【解析】break结束所在循环后,程序转到该循环结构后面的语句继续执行。
18.执行下列程序后,输出结果是( )
int i;
for (i = 1; i <= 6; i++) {
if (i % 2 == 0)
continue;
if (i > 4)
break;
printf("%d", i);
}
A.13
B.123
C.15
D.135
【答案】A
【解析】i为1时输出1,i为2、4时continue跳过;i为3时输出3,i为5时满足i>4执行break,因此输出13。
19.关于break和continue的使用范围,下列说法正确的是( )
A.只能写在函数外部
B.只能写在程序最外层
C.应写在循环体中使用
D.只能写在变量声明中
【答案】C
【解析】break和continue用于控制循环执行,通常写在循环体中;break还可以用于switch结构。
20.执行下列程序后,输出结果是( )
int i;
for (i = 1; i <= 4; i++) {
if (i == 2)
continue;
printf("%d", i);
}
A.14
B.124
C.1234
D.134
【答案】D
【解析】i等于2时跳过本次输出,i为1、3、4时输出,所以结果为134。
二、简答题(共2题,每题10分,共20分)
1.阅读程序,写出程序的输出结果。
#include <stdio.h>
int main( )
{
int i;
for (i = 1; i <= 6; i++) {
if (i == 4)
break;
printf("%d", i);
}
printf(" %d
", i);
return 0;
}
【答案】输出:123 4
【解析】i为1、2、3时输出;i等于4时执行break结束循环,循环后的printf输出空格和4。
2.阅读程序,写出程序的输出结果。
#include <stdio.h>
int main( )
{
int i;
int sum = 0;
for (i = 1; i <= 6; i++) {
if (i % 2 == 0)
continue;
sum += i;
}
printf("%d
", sum);
return 0;
}
【答案】输出:9
【解析】偶数2、4、6执行continue,不参与累加;sum=1+3+5=9。
三、案例分析题(共1题,共10分)
1.下面程序用于累加1到5中的奇数,但程序中有一处错误,请指出并改正。
#include <stdio.h>
int main( )
{
int i;
int sum = 0;
for (i = 1; i <= 5; i++) {
if (i % 2 == 0)
break;
sum += i;
}
printf("%d
", sum);
return 0;
}
【答案】将if (i % 2 == 0)后的break改为continue。
【解析】遇到偶数时应跳过本次循环,继续处理后面的数;break会直接结束整个循环,导致只累加1。使用continue后可继续处理3和5,得到奇数累加和9。
四、综合应用题(共1题,共10分)
1.编写程序:输入一个正整数n,输出1到n中所有不是3的倍数的整数,每个整数后输出一个空格。
【答案】
#include <stdio.h>
int main( )
{
int n;
int i;
scanf("%d", &n);
for (i = 1; i <= n; i++) {
if (i % 3 == 0)
continue;
printf("%d ", i);
}
return 0;
}
【解析】for循环依次处理1到n;当i是3的倍数时执行continue跳过输出,其余数值执行printf,因此只输出不是3的倍数的整数。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
编写说明:2027版山东省春季高考统一考试软件与应用技术类《考纲百套卷》,依据《软件与应用技术类专业知识考试标准》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共85份试卷,其中知识训练卷48份、专题训练卷25份、课程综合卷12份。
本试卷是第7卷,为知识训练卷,按《C语言程序设计知识》中“break语句与continue语句”范围和要求编写。具体内容为:(2)理解break语句和continue语句的用法。
山东省春季高考统一考试
软件与应用技术类《考纲百套卷》
第7卷 C语言程序设计知识——break语句与continue语句
(考试时间:45分钟 满分:100分)
一、选择题(共20题,每题3分,共60分)
1.在循环结构中,break语句的作用是( )
A.立即结束所在的循环
B.跳过本次循环
C.重新执行循环条件
D.结束整个程序
2.在循环结构中,continue语句的作用是( )
A.结束程序
B.跳过本次循环剩余语句,进入下一次循环判断
C.重新执行循环初始化语句
D.结束整个循环
3.执行下列程序后,输出结果是( )
int i;
for (i = 1; i <= 5; i++) {
if (i == 3)
break;
printf("%d", i);
}
A.12345
B.1245
C.123
D.12
4.执行下列程序后,输出结果是( )
int i;
for (i = 1; i <= 5; i++) {
if (i == 3)
continue;
printf("%d", i);
}
A.1235
B.12345
C.1245
D.12
5.关于break和continue的说法,正确的是( )
A.break结束循环,continue只跳过本次循环剩余部分
B.break和continue作用完全相同
C.break只用于if语句
D.continue会结束整个程序
6.执行下列程序后,i的值是( )
int i = 0;
while (i < 5) {
i++;
if (i == 3)
break;
}
A.2
B.3
C.4
D.5
7.执行下列程序后,输出结果是( )
int i = 0;
while (i < 5) {
i++;
if (i % 2 == 0)
continue;
printf("%d", i);
}
A.12345
B.15
C.135
D.24
8.在嵌套循环中,break语句通常结束( )
A.所在的最内层循环
B.最外层循环
C.整个程序
D.所有循环
9.执行下列程序后,输出结果是( )
int i, j;
for (i = 1; i <= 2; i++) {
for (j = 1; j <= 3; j++) {
if (j == 2)
break;
printf("%d", j);
}
}
A.123123
B.1212
C.1122
D.11
10.执行下列程序后,输出结果是( )
int i, j;
for (i = 1; i <= 2; i++) {
for (j = 1; j <= 3; j++) {
if (j == 2)
continue;
printf("%d", j);
}
}
A.1122
B.1313
C.123123
D.13
11.在for循环中执行continue后,通常会先执行( )
A.循环外第一条语句
B.循环体第一条语句
C.循环更新表达式
D.循环初始化表达式
12.执行下列程序后,sum的值是( )
int i;
int sum = 0;
for (i = 1; i <= 5; i++) {
if (i == 3)
continue;
sum += i;
}
A.15
B.3
C.9
D.12
13.执行下列程序后,输出结果是( )
int i;
for (i = 1; i <= 5; i++) {
if (i > 2)
break;
printf("%d", i);
}
printf("%d", i);
A.123
B.123
C.1233
D.1234
14.下列语句中,continue使用位置正确的是( )
A.continue(x);
B.if (x > 0) continue;
C.printf("continue");
D.int continue = 1;
15.执行下列程序后,输出结果是( )
int i = 1;
while (i <= 5) {
if (i == 4)
break;
printf("%d", i);
i++;
}
A.234
B.1245
C.1234
D.123
16.执行下列程序后,输出结果是( )
int i = 0;
while (i < 5) {
i++;
if (i == 2)
continue;
printf("%d", i);
}
A.1345
B.15
C.12345
D.1245
17.在循环体中使用break后,程序通常执行( )
A.循环体开头语句
B.循环后面的语句
C.程序入口语句
D.循环更新表达式后再无条件循环
18.执行下列程序后,输出结果是( )
int i;
for (i = 1; i <= 6; i++) {
if (i % 2 == 0)
continue;
if (i > 4)
break;
printf("%d", i);
}
A.13
B.123
C.15
D.135
19.关于break和continue的使用范围,下列说法正确的是( )
A.只能写在函数外部
B.只能写在程序最外层
C.应写在循环体中使用
D.只能写在变量声明中
20.执行下列程序后,输出结果是( )
int i;
for (i = 1; i <= 4; i++) {
if (i == 2)
continue;
printf("%d", i);
}
A.14
B.124
C.1234
D.134
二、简答题(共2题,每题10分,共20分)
1.阅读程序,写出程序的输出结果。
#include <stdio.h>
int main( )
{
int i;
for (i = 1; i <= 6; i++) {
if (i == 4)
break;
printf("%d", i);
}
printf(" %d
", i);
return 0;
}
2.阅读程序,写出程序的输出结果。
#include <stdio.h>
int main( )
{
int i;
int sum = 0;
for (i = 1; i <= 6; i++) {
if (i % 2 == 0)
continue;
sum += i;
}
printf("%d
", sum);
return 0;
}
三、案例分析题(共1题,共10分)
1.下面程序用于累加1到5中的奇数,但程序中有一处错误,请指出并改正。
#include <stdio.h>
int main( )
{
int i;
int sum = 0;
for (i = 1; i <= 5; i++) {
if (i % 2 == 0)
break;
sum += i;
}
printf("%d
", sum);
return 0;
}
四、综合应用题(共1题,共10分)
1.编写程序:输入一个正整数n,输出1到n中所有不是3的倍数的整数,每个整数后输出一个空格。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$