内容正文:
编写说明:2027版重庆市高等职业教育分类考试计算机类《考纲百套卷》,依据《2027年重庆市高等职业教育分类考试专业综合理论测试计算机类考试说明》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共99份试卷,其中知识训练卷76份、专题训练卷16份、课程综合卷7份。
本试卷是第69卷,为知识训练卷,按《程序设计》中“循环嵌套与控制语句”范围和要求编写。具体内容为:8.掌握循环的嵌套;9.掌握循环辅助控制语句break和continue的作用;
重庆市高职分类考试
计算机类《考纲百套卷》
第69卷 程序设计——循环嵌套与控制语句
(考试时间:45分钟 满分:100分)
一、填空题(共10题,每题3分,共30分)
1.在循环中立即结束当前所在循环的语句是__________。
【答案】break
【解析】break结束它所在的最近一层循环,循环后的语句仍可继续执行。
2.continue执行后,本轮循环体中位于其后的语句将被__________。
【答案】跳过
【解析】continue直接进入下一次迭代,当前轮次后续语句不再执行。
3.一个循环体内部又包含循环语句,这种结构称为循环__________。
【答案】嵌套
【解析】外层循环体中包含内层循环,就形成循环嵌套。
4.break只会跳出它所在的最近一层__________。
【答案】循环
【解析】break不会自动跳出更外层循环或结束整个函数。
5.在for循环中,continue通常会先执行循环变量的__________表达式。
【答案】更新
【解析】for中的continue跳过循环体剩余部分后,会进入更新表达式。
6.在while循环中使用continue时,应特别检查控制变量是否仍能正常__________。
【答案】改变
【解析】若continue跳过了变量改变语句,循环条件可能长期保持为真。
7.要让多层循环同时结束,可以设置一个__________变量并让各层条件检查它。
【答案】标志
【解析】标志变量变为特定值后,可使内外层循环条件共同失效。
8.内层循环正常结束后,程序通常继续执行外层循环体中位于内层循环之后的__________。
【答案】语句
【解析】内层结束只表示退出内层,外层当前迭代仍可继续。
9.嵌套循环的总执行次数需要结合各层循环的实际__________进行判断。
【答案】次数
【解析】continue和break会改变循环体实际执行情况,需要逐层统计次数。
10.单个break不能直接退出多层循环,通常需要标志变量或函数__________。
【答案】返回
【解析】return可以离开当前函数,标志变量也能辅助多层循环退出。
二、单项选择题(共15题,每题2分,共30分)
1.在嵌套循环中,break默认结束的是( )。
A.最近的一层循环
B.所有外层循环
C.整个函数的执行
D.下一条判断语句
【答案】A
【解析】break的作用范围是它所在的最近一层循环。
2.continue执行后,当前循环体中后续语句通常会( )。
A.执行两次
B.不再执行
C.先执行再回退
D.转为外层循环初始化
【答案】B
【解析】continue跳过当前迭代剩余部分,直接进入下一轮流程。
3.若外层循环执行4次,内层循环每次完整执行3次,且没有break,则内层循环体最多进入( )。
A.3次
B.7次
C.12次
D.16次
【答案】C
【解析】外层每次都会完整运行内层3次,总次数为4乘3。
4.在for循环中执行continue后,通常首先回到( )。
A.初始化表达式
B.函数返回语句
C.程序入口位置
D.更新表达式
【答案】D
【解析】for中的continue会跳过循环体剩余语句并进入更新部分。
5.下列做法最适合退出两层嵌套循环的是( )。
A.让两层循环条件共同检查flag
B.只在内层使用continue
C.只写一个内层break
D.把内层循环改成注释
【答案】A
【解析】flag变为结束值后可以使两层循环条件同时失效。
6.while循环中continue跳过了控制变量更新,最可能造成( )。
A.循环自动增加一次
B.循环条件长期成立
C.内层循环立即结束
D.程序一定输出零
【答案】B
【解析】控制变量不更新可能使while条件持续为真。
7.判断嵌套循环结果时,首先应区分break和continue的( )。
A.变量类型
B.输出字体
C.控制范围
D.函数名称
【答案】C
【解析】break结束一层循环,continue只跳过当前迭代的剩余语句。
8.内层循环执行break后,外层循环体中内层循环之后的语句( )。
A.一定被删除
B.一定执行三次
C.只能在下一次程序运行执行
D.仍可能执行
【答案】D
【解析】break只跳出内层循环,外层当前迭代的后续语句仍可能执行。
9.下列代码结构能够在找到目标后停止两层搜索的是( )。
A.flag=1并在两层条件中判断flag
B.只在内层写continue
C.只增加一个无条件printf
D.只修改输出格式
【答案】A
【解析】标志变量可以把内层找到目标的状态传递给外层条件。
10.若内层循环每次遇到偶数列都continue,continue本身( )。
A.一定结束外层循环
B.不必然减少循环控制次数
C.一定让循环变量归零
D.一定跳出所有嵌套层
【答案】B
【解析】continue跳过本轮后续语句,循环控制变量通常仍继续更新。
11.多层循环中使用return的直接效果通常是( )。
A.只跳过一次内层迭代
B.只回到内层循环开头
C.离开当前函数
D.重新执行函数第一条语句
【答案】C
【解析】return结束当前函数,因而可以同时离开函数内的多层循环。
12.在while循环中,continue后面若没有控制变量更新,编程时应重点防止( )。
A.变量自动变成常量
B.break被强制执行
C.for初始化被重复调用
D.出现无法结束的循环
【答案】D
【解析】缺少更新可能使循环条件一直为真,导致无法结束。
13.下列说法正确的是( )。
A.内层循环结束后外层仍可执行后续语句
B.内层结束必然结束整个程序
C.continue一定跳出外层循环
D.break一定修改所有循环变量
【答案】A
【解析】内层循环结束只影响内层,外层当前迭代可以继续。
14.若flag初值为0,找到目标后置为1,则外层while条件常写成( )。
A.flag = 0
B.flag == 0
C.flag != 1并且不更新
D.flag + 1 == 0
【答案】B
【解析】找到目标后flag变为1,flag==0条件失效,外层循环结束。
15.下列哪项最能减少嵌套循环结果判断中的错误( )。
A.只看最后一行printf
B.忽略continue所在位置
C.按迭代顺序记录变量和分支变化
D.把所有break都当作return
【答案】C
【解析】逐次记录变量、continue和break的触发位置,才能准确得到结果。
三、判断题(共12题,每题1分,共12分)
1.break通常只结束它所在的最近一层循环。( )
【答案】√
【解析】普通break不会自动跳出全部外层循环。
2.continue会直接结束整个函数的执行。( )
【答案】×
【解析】continue只影响当前循环迭代,不会直接结束函数。
3.循环嵌套是指一个循环体内部包含另一个循环。( )
【答案】√
【解析】内层循环位于外层循环体中即可形成嵌套。
4.for循环中的continue通常会跳过更新表达式。( )
【答案】×
【解析】for中的continue通常转到更新表达式,再进行条件判断。
5.while循环中的continue可能跳过控制变量更新语句。( )
【答案】√
【解析】如果更新语句位于continue之后,就可能被跳过。
6.内层循环执行break后,外层循环体后续语句绝对不会执行。( )
【答案】×
【解析】break只结束内层,外层当前迭代仍可继续执行后续语句。
7.使用标志变量可以辅助退出多层嵌套循环。( )
【答案】√
【解析】各层条件共同检查标志变量即可实现多层退出。
8.continue一定会减少外层循环的执行次数。( )
【答案】×
【解析】continue主要影响当前层当前迭代,不直接减少外层次数。
9.return可以使程序离开当前函数中的多层循环。( )
【答案】√
【解析】return直接结束当前函数,因此会离开函数内的嵌套循环。
10.只要使用break,程序就一定结束整个函数。( )
【答案】×
【解析】break通常只结束最近一层循环,函数可能继续执行。
11.判断嵌套循环结果时,需要记录continue和break的触发顺序。( )
【答案】√
【解析】两种控制语句的触发位置会改变后续执行路径。
12.内层循环结束后,外层循环体中的后续语句不可能执行。( )
【答案】×
【解析】内层正常结束或被break结束后,外层后续语句仍可能执行。
四、程序填空题(共2题,每题8分,共16分)
1.阅读下列程序,补充空格处的代码。程序在双层for中跳过偶数和,并在累计次数达到目标后退出搜索。
int i, j, sum = 0, odd = 0;
for (i = 1; i <= 4; i++) {
for (j = 1; j <= 5; j++) {
if ((i + j) % 2 __________ 0) {
__________;
}
sum += i * j;
odd++;
if (odd >= 5) {
break;
}
}
if (odd >= 5) {
break;
}
}
printf("%d %d", sum, odd);
(1)第一个空应填什么?(2)第二个空应填什么?
【答案】(1)==;(2)continue;
【解析】当i+j为偶数时应跳过本轮,因此第一个空填==,第二个空填continue。逐步计算:i=1时保留j=2、4,sum为6,odd为2;i=2时保留j=1、3、5,累计sum为24,odd达到5并跳出内层,随后外层条件也触发break,最终输出24 5。
2.阅读下列程序,补充空格处的代码。程序用标志变量从两层while中退出。
int row = 1, col, found = 0, checks = 0, total = 0;
while (row <= 4 && found == 0) {
col = 1;
while (col <= 6) {
checks++;
if ((row * col) % 5 __________ 0) {
found = 1;
__________;
}
if (col % 2 == 0) {
col++;
continue;
}
total += row + col;
col++;
}
row++;
}
printf("%d %d %d %d", row, found, total, checks);
(1)第一个空应填什么?(2)第二个空应填什么?
【答案】(1)==;(2)break;
【解析】row*col为5的倍数时目标被找到,条件填==,第二个空填break。row=1时依次检查col=1、2、3、4、5,前四次累计total为6,第5次找到目标并跳出内层;随后row加1变为2,found为1使外层条件失效,最终输出2 1 6 5。
五、程序阅读题(共2题,每题6分,共12分)
1.阅读下列程序并回答问题。
int i, j, sum = 0, hits = 0;
for (i = 1; i <= 4; i++) {
for (j = 1; j <= 6; j++) {
if ((i + j) % 3 == 0) continue;
if (i * j >= 10) break;
sum += i + j;
hits++;
}
sum += 2 * i;
}
printf("%d %d", sum, hits);
(1)何种条件下执行continue?(2)何种条件下执行break?(3)最终sum和hits是多少?
【答案】(1)i+j能被3整除;(2)i*j大于或等于10;(3)sum=61,hits=9。
【解析】逐轮计算:i=1时j=2、5执行continue,其他四次累加2、4、5、7,sum为18,再加2得20,hits为4;i=2时j=1跳过,j=2和3累加4、5,j=5触发break,再加4得33,hits为6;i=3时j=3跳过,j=1和2累加4、5,j=4触发break,再加6得48,hits为8;i=4时j=2跳过,j=3触发break,只有j=1累加5,再加8得61,hits为9。
2.阅读下列程序并回答问题。
int i = 1, j, total = 0, checks = 0, stop = 0;
while (i <= 4 && stop == 0) {
j = 1;
while (j <= 5) {
checks++;
if ((i + j) % 4 == 0) {
stop = 1;
break;
}
if (j % 2 == 1) {
j++;
continue;
}
total += i * j;
j++;
}
i++;
}
printf("%d %d %d", i, total, checks);
(1)何时把stop设为1?(2)外层循环为何结束?(3)最终输出什么?
【答案】(1)i+j能被4整除时;(2)stop变为1使外层条件失效;(3)输出2 2 3。
【解析】i=1时j=1检查后因j为奇数执行continue,j=2累加i*j=2,j=3时i+j=4,设置stop=1并break,内层共检查3次。内层结束后i加1变为2,外层条件中的stop==0不成立,循环结束,最终total为2,输出2 2 3。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
编写说明:2027版重庆市高等职业教育分类考试计算机类《考纲百套卷》,依据《2027年重庆市高等职业教育分类考试专业综合理论测试计算机类考试说明》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共99份试卷,其中知识训练卷76份、专题训练卷16份、课程综合卷7份。
本试卷是第69卷,为知识训练卷,按《程序设计》中“循环嵌套与控制语句”范围和要求编写。具体内容为:8.掌握循环的嵌套;9.掌握循环辅助控制语句break和continue的作用;
重庆市高职分类考试
计算机类《考纲百套卷》
第69卷 程序设计——循环嵌套与控制语句
(考试时间:45分钟 满分:100分)
一、填空题(共10题,每题3分,共30分)
1.在循环中立即结束当前所在循环的语句是__________。
2.continue执行后,本轮循环体中位于其后的语句将被__________。
3.一个循环体内部又包含循环语句,这种结构称为循环__________。
4.break只会跳出它所在的最近一层__________。
5.在for循环中,continue通常会先执行循环变量的__________表达式。
6.在while循环中使用continue时,应特别检查控制变量是否仍能正常__________。
7.要让多层循环同时结束,可以设置一个__________变量并让各层条件检查它。
8.内层循环正常结束后,程序通常继续执行外层循环体中位于内层循环之后的__________。
9.嵌套循环的总执行次数需要结合各层循环的实际__________进行判断。
10.单个break不能直接退出多层循环,通常需要标志变量或函数__________。
二、单项选择题(共15题,每题2分,共30分)
1.在嵌套循环中,break默认结束的是( )。
A.最近的一层循环
B.所有外层循环
C.整个函数的执行
D.下一条判断语句
2.continue执行后,当前循环体中后续语句通常会( )。
A.执行两次
B.不再执行
C.先执行再回退
D.转为外层循环初始化
3.若外层循环执行4次,内层循环每次完整执行3次,且没有break,则内层循环体最多进入( )。
A.3次
B.7次
C.12次
D.16次
4.在for循环中执行continue后,通常首先回到( )。
A.初始化表达式
B.函数返回语句
C.程序入口位置
D.更新表达式
5.下列做法最适合退出两层嵌套循环的是( )。
A.让两层循环条件共同检查flag
B.只在内层使用continue
C.只写一个内层break
D.把内层循环改成注释
6.while循环中continue跳过了控制变量更新,最可能造成( )。
A.循环自动增加一次
B.循环条件长期成立
C.内层循环立即结束
D.程序一定输出零
7.判断嵌套循环结果时,首先应区分break和continue的( )。
A.变量类型
B.输出字体
C.控制范围
D.函数名称
8.内层循环执行break后,外层循环体中内层循环之后的语句( )。
A.一定被删除
B.一定执行三次
C.只能在下一次程序运行执行
D.仍可能执行
9.下列代码结构能够在找到目标后停止两层搜索的是( )。
A.flag=1并在两层条件中判断flag
B.只在内层写continue
C.只增加一个无条件printf
D.只修改输出格式
10.若内层循环每次遇到偶数列都continue,continue本身( )。
A.一定结束外层循环
B.不必然减少循环控制次数
C.一定让循环变量归零
D.一定跳出所有嵌套层
11.多层循环中使用return的直接效果通常是( )。
A.只跳过一次内层迭代
B.只回到内层循环开头
C.离开当前函数
D.重新执行函数第一条语句
12.在while循环中,continue后面若没有控制变量更新,编程时应重点防止( )。
A.变量自动变成常量
B.break被强制执行
C.for初始化被重复调用
D.出现无法结束的循环
13.下列说法正确的是( )。
A.内层循环结束后外层仍可执行后续语句
B.内层结束必然结束整个程序
C.continue一定跳出外层循环
D.break一定修改所有循环变量
14.若flag初值为0,找到目标后置为1,则外层while条件常写成( )。
A.flag = 0
B.flag == 0
C.flag != 1并且不更新
D.flag + 1 == 0
15.下列哪项最能减少嵌套循环结果判断中的错误( )。
A.只看最后一行printf
B.忽略continue所在位置
C.按迭代顺序记录变量和分支变化
D.把所有break都当作return
三、判断题(共12题,每题1分,共12分)
1.break通常只结束它所在的最近一层循环。( )
2.continue会直接结束整个函数的执行。( )
3.循环嵌套是指一个循环体内部包含另一个循环。( )
4.for循环中的continue通常会跳过更新表达式。( )
5.while循环中的continue可能跳过控制变量更新语句。( )
6.内层循环执行break后,外层循环体后续语句绝对不会执行。( )
7.使用标志变量可以辅助退出多层嵌套循环。( )
8.continue一定会减少外层循环的执行次数。( )
9.return可以使程序离开当前函数中的多层循环。( )
10.只要使用break,程序就一定结束整个函数。( )
11.判断嵌套循环结果时,需要记录continue和break的触发顺序。( )
12.内层循环结束后,外层循环体中的后续语句不可能执行。( )
四、程序填空题(共2题,每题8分,共16分)
1.阅读下列程序,补充空格处的代码。程序在双层for中跳过偶数和,并在累计次数达到目标后退出搜索。
int i, j, sum = 0, odd = 0;
for (i = 1; i <= 4; i++) {
for (j = 1; j <= 5; j++) {
if ((i + j) % 2 __________ 0) {
__________;
}
sum += i * j;
odd++;
if (odd >= 5) {
break;
}
}
if (odd >= 5) {
break;
}
}
printf("%d %d", sum, odd);
(1)第一个空应填什么?(2)第二个空应填什么?
2.阅读下列程序,补充空格处的代码。程序用标志变量从两层while中退出。
int row = 1, col, found = 0, checks = 0, total = 0;
while (row <= 4 && found == 0) {
col = 1;
while (col <= 6) {
checks++;
if ((row * col) % 5 __________ 0) {
found = 1;
__________;
}
if (col % 2 == 0) {
col++;
continue;
}
total += row + col;
col++;
}
row++;
}
printf("%d %d %d %d", row, found, total, checks);
(1)第一个空应填什么?(2)第二个空应填什么?
五、程序阅读题(共2题,每题6分,共12分)
1.阅读下列程序并回答问题。
int i, j, sum = 0, hits = 0;
for (i = 1; i <= 4; i++) {
for (j = 1; j <= 6; j++) {
if ((i + j) % 3 == 0) continue;
if (i * j >= 10) break;
sum += i + j;
hits++;
}
sum += 2 * i;
}
printf("%d %d", sum, hits);
(1)何种条件下执行continue?(2)何种条件下执行break?(3)最终sum和hits是多少?
2.阅读下列程序并回答问题。
int i = 1, j, total = 0, checks = 0, stop = 0;
while (i <= 4 && stop == 0) {
j = 1;
while (j <= 5) {
checks++;
if ((i + j) % 4 == 0) {
stop = 1;
break;
}
if (j % 2 == 1) {
j++;
continue;
}
total += i * j;
j++;
}
i++;
}
printf("%d %d %d", i, total, checks);
(1)何时把stop设为1?(2)外层循环为何结束?(3)最终输出什么?
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$