《C语言程序设计》(四)循环结构程序设计 - 知识点训练卷 重庆市计算机类 考纲百套卷 第51卷

2024-08-09
| 2份
| 20页
| 95人阅读
| 2人下载

资源信息

学段 中职
学科 职教专业课
课程 C语言程序设计
教材版本 -
年级 -
章节 -
类型 题集-专项训练
知识点 循环结构
使用场景 中职复习
学年 2024-2025
地区(省份) 重庆市
地区(市) -
地区(区县) -
文件格式 ZIP
文件大小 135 KB
发布时间 2024-08-09
更新时间 2024-08-09
作者 xy05676
品牌系列 学易金卷·考纲百套卷
审核时间 2024-08-09
下载链接 https://m.zxxk.com/soft/46746654.html
价格 3.00储值(1储值=1元)
来源 学科网

内容正文:

编写说明:重庆市《计算机类考纲百套卷》依据重庆市《高等职业教育分类考试专业综合理论测试计算机类考试说明》编写,本套试卷共88份分为三个部分,第一部分是根据考试说明的各章节的要求,编写了58份知识点训练卷,第二部分是针对每门课程的重点内容,编写的20份常考题训练卷,第三个部分是参考近几年重庆市计算机类专业理论考试真题,编写了10份专业综合训练卷。 本试卷是重庆市《计算机类考纲百套卷》的第51卷,是知识点训练卷,按考纲中《C语言程序设计》---(四)循环结构程序设计的7-8要求编写。其两点要求是:7.掌握循环的嵌套(只要求双重循环);8.掌握循环辅助控制语句 break 和 continue 的作用。 重庆市《计算机类考纲百套卷》 第51卷 C语言程序设计 (四)循环结构程序设计 知识点训练卷 考试时间60分钟 满分100分 班级 姓名 学号 成绩 一、填空题(本大题共15小题,每题2分,共30分) 1. 在C语言中,使用for语句可以创建一个循环,如果要创建一个双重循环,则需要在一个for循环的循环体内部再定义一个for循环。这种结构称为__________。 【答案】循环嵌套 2. 当内层循环完全包含在外层循环内部时,内层循环将__________执行。 【答案】多次 3. 在双重循环中,如果外层循环执行了10次,而内层循环执行了5次,那么内层循环总共将执行__________次。 【答案】50 4. 如果在内层循环中使用了break语句,它将__________当前的内层循环。 【答案】终止 5. continue语句在循环中的作用是跳过__________的代码,直接进入下一次循环。 【答案】当前迭代剩余部分 6. 在以下代码段中,内层循环的循环变量是__________。 for(int i = 0; i < 5; i++) { for(int j = 0; j < 5; j++) { // ... } } 【答案】j 7.循环体如包括有一个以上的语句,则必须用__________括起来,组成复合语句。 【答案】{} 8. 在双重循环中,如果在内层循环中使用了break语句,它将不会影响__________循环的继续执行。 【答案】外层 9. 在一个循环体中,如果同时使用了break和continue语句,__________语句将首先执行,因为它出现在循环的更早位置。 【答案】break 10. 以下代码段将打印出__________。 for(int i = 1; i <= 5; i++) { for(int j = 1; j <= i; j++) { printf("*"); } printf(" "); } 【答案】一个直角三角形 11. 在以下代码段中,填入适当的语句使内层循环在j == 3时退出。 for(int i = 0; i < 5; i++) { for(int j = 0; j < 5; j++) { if(j == 3) { __________; } // ... } } 【答案】break; 12. 以下代码段将计算并打印1到10之间所有偶数的和,请填空。 int sum = 0; for(int i = 1; i <= 10; i++) { if(i % 2 != 0) { __________; } sum += i; } printf("Sum of even numbers: %d ", sum); 【答案】continue; 13. 当外层循环变量为i,内层循环变量为j时,以下代码段将打印出一个__________。 for(i = 1; i <= 5; i++) { for(j = 1; j <= 5; j++) { printf("*"); } printf(" "); } 【答案】正方形 14. 在以下代码段中,break语句的作用是__________内层循环。 【答案】退出 15. 在以下代码段中,continue语句的作用是__________当前迭代,并检查循环条件以决定是否进行下一次迭代。 【答案】跳过 二、单项选择题(本大题共15小题,每题2分,共30分) 1.下面哪个语句可以终止当前循环并跳出循环体?( ) A. break B. continue C. return D. exit 【答案】A 2.下面哪个语句可以跳过当前迭代,开始下一次循环迭代?( ) A. break B. continue C. return D. exit 【答案】B 3.下面哪个循环语句是先判断条件是否满足,再执行循环体?( ) A.while循环 B. for循环 C. do-while循环 D. continue语句 【答案】A 4.下面哪个循环语句适合在已知循环次数的情况下使用?( ) A.while循环 B. for循环 C. do-while循环 D. return语句 【答案】B 5.下面哪个循环语句适合在循环次数未知的情况下使用?( ) A. while循环 B. for循环 C. do-while循环 D. exit 【答案】A 6.设有程序段 int k=10;while(k=0) k=k-1;下面描述中正确的是( )。 A. while循环执行10次 B.循环是无限循环 C.循环体语句一次也不执行 D.循环体语句执行一次 【答案】 C 7.下面程序的输出结果是 ( )。 int k,j,s; for(k=2;k<6;k++,k++) { s=1; for(j=k;j<6;j++) s+=j;} printf("%d ",s); A.1 B.9 C.11 D.10 【答案】D 8.下面的代码段输出的结果是什么?( ) for(int i = 0; i < 3; i++){ for(int j = 0; j < 3; j++){ if(i == 1 && j == 1){ break; } printf("%d %d ", i, j); } } A.0 0 0 1 0 2 1 0 1 1 2 0 2 1 2 2 B.0 0 0 1 0 2 1 0 1 1 1 2 2 0 2 1 2 2 C. 0 0 0 1 0 2 1 0 1 1 1 2 2 0 2 1 D.0 0 0 1 0 2 1 0 1 1 1 2 2 0 2 1 2 【答案】C 9.下面的代码段输出的结果是什么?( ) for(int i = 0; i < 5; i++){ if(i == 3){ break; } printf("%d ", i); } A.0 1 2 B.0 1 2 3 C.0 1 2 3 4 D.0 1 2 3 4 5 【答案】A 10.下面的代码段输出的结果是什么?( ) for(int i = 0; i < 5; i++){ if(i == 3){ continue; } printf("%d ", i); } A.0 1 2 3 4 B.0 1 2 4 C. 0 1 2 3 4 5 D.0 1 2 3 4 5 6 【答案】B 11.下面的代码段输出的结果是什么?( ) for(int i = 0; i < 3; i++){ for(int j = 0; j < 3; j++){ if(i + j == 2){ break; } printf("%d %d ", i, j); } } A.0 0 0 1 1 0 1 1 2 0 2 1 2 2 B. 0 0 0 1 0 2 1 0 1 1 1 2 2 0 2 1 2 2 C. 0 0 0 1 0 2 1 0 1 1 1 2 2 0 2 1 D.0 0 0 1 0 2 1 0 1 1 1 2 2 0 2 1 2 【答案】A 12. 在以下C语言代码片段中,关于输出结果的说法正确的是( )。 int i, j; for(i = 0; i < 5; i++) { for(j = 0; j < 5; j++) { if(i == j) { break; } printf("%d%d ", i, j); } } A. 输出结果为:0011 22 33 44 B. 输出结果为:0011 22 33 44 55 C. 输出结果为:0011 22 33 44 55 66 77 88 99 D. 输出结果为:0011 22 33 44 55 66 77 88 【答案】A 13. 关于C语言中break和continue语句的说法,以下哪项是错误的?( ) A. break语句可以用于switch和循环结构中,用于跳出当前结构 B. continue语句只能用于循环结构中,用于跳过本次循环的剩余代码,进入下一次循环 C. 在多层循环嵌套中,break语句只能跳出最内层循环 D. 在多层循环嵌套中,continue语句会跳过当前层循环的剩余代码,进入下一次循环 【答案】D 14. 在以下C语言代码片段中,执行后的输出结果是什么?( ) int i = 0; while(i < 10) { i++; if(i % 2 == 0) { continue; } printf("%d ", i); } A. 1 3 5 7 9 B. 2 4 6 8 10 C. 1 2 3 4 5 6 7 8 9 10 D. 1 3 5 7 【答案】A 15. 在以下C语言代码片段执行完毕后,变量sum的值是多少?( ) int i, j, sum = 0; for(i = 1; i <= 5; i++) { for(j = 1; j <= i; j++) { if(i == j) { break; } sum += j; } } A. 10 B. 15 C. 20 D. 25 【答案】B 三、判断题(本大题共6小题,每题2分,共12分) 1. 在C语言中,双重循环就是指循环体内又包含了一个循环结构。( ) 【答案】√ 2. 在双重循环中,内层循环的循环控制变量可以与外层循环的循环控制变量同名。( ) 【答案】× 3. 使用break语句可以立即退出当前所在的循环。( ) 【答案】√ 4. continue语句的作用是结束当前循环,开始下一次循环。( ) 【答案】√ 5. 在循环结构中,break语句和continue语句可以互换使用,不影响程序运行结果。( ) 【答案】× 6. 在双重循环中,如果内层循环使用了break语句,则外层循环也会被终止。( ) 【答案】× 四、程序填空题(本大题共2小题,每题8分,共16分) 1.#include <stdio.h> int main() { int i, j; for(i = 1; i <= 5; i++) { // 外层循环 for(j = 1; j <= i; j++) { // 内层循环 if (i == ____________) { // 填空处 ____________; // 填空处 } printf("*"); } printf(" "); } return 0; } 请填写合适的代码,使得程序打印出一个直角三角形,当外层循环变量i等于3时,内层循环提前结束。 【答案】 if (i == 3) { // 填空处 break; // 填空处 } 2.#include <stdio.h> int main() { int sum = 0; for(int i = 1; i <= 10; i++) { if (i % 2 == 0) { ____________; // 填空处 } sum += i; } printf("The sum is: %d ", sum); return 0; } 请填写合适的代码,使得程序计算1到10之间所有奇数的和。 【答案】 continue; // 填空处 五、阅读程序题(本大题共12分) 1.#include <stdio.h> int main() { int i, j; for(i = 1; i <= 5; i++) { // 外层循环 for(j = 1; j <= 5; j++) { // 内层循环 if(j == i) { continue; // 当内层循环变量等于外层循环变量时 } printf("%d ", j); } printf(" "); } return 0; } (1)请描述程序运行后输出的结果。 (2)程序中的continue语句有什么作用? 【答案】 (1)程序运行后的输出结果如下: 1 2 3 4 5 1 2 3 4 1 2 3 1 2 1 外层循环从1运行到5,内层循环也是从1运行到5。当内层循环的变量j等于外层循环的变量i时,continue语句被执行,导致内层循环的当前迭代提前结束,不执行printf("%d ", j);,因此不会打印出等于外层循环变量i的数字。 (2)程序中的continue语句的作用是跳过当前内层循环迭代的剩余部分,即当j == i时,不执行printf("%d ", j);,直接进行下一次内层循环的迭代。这导致在每个外层循环的迭代中,与外层循环变量i相等的数字不会被打印出来。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $$ 编写说明:重庆市《计算机类考纲百套卷》依据重庆市《高等职业教育分类考试专业综合理论测试计算机类考试说明》编写,本套试卷共88份分为三个部分,第一部分是根据考试说明的各章节的要求,编写了58份知识点训练卷,第二部分是针对每门课程的重点内容,编写的20份常考题训练卷,第三个部分是参考近几年重庆市计算机类专业理论考试真题,编写了10份专业综合训练卷。 本试卷是重庆市《计算机类考纲百套卷》的第51卷,是知识点训练卷,按考纲中《C语言程序设计》---(四)循环结构程序设计的7-8要求编写。其两点要求是:7.掌握循环的嵌套(只要求双重循环);8.掌握循环辅助控制语句 break 和 continue 的作用。 重庆市《计算机类考纲百套卷》 第51卷 C语言程序设计 (四)循环结构程序设计 知识点训练卷 考试时间60分钟 满分100分 班级 姓名 学号 成绩 一、填空题(本大题共15小题,每题2分,共30分) 1. 在C语言中,使用for语句可以创建一个循环,如果要创建一个双重循环,则需要在一个for循环的循环体内部再定义一个for循环。这种结构称为__________。 2. 当内层循环完全包含在外层循环内部时,内层循环将__________执行。 3. 在双重循环中,如果外层循环执行了10次,而内层循环执行了5次,那么内层循环总共将执行__________次。 4. 如果在内层循环中使用了break语句,它将__________当前的内层循环。 5. continue语句在循环中的作用是跳过__________的代码,直接进入下一次循环。 6. 在以下代码段中,内层循环的循环变量是__________。 for(int i = 0; i < 5; i++) { for(int j = 0; j < 5; j++) { // ... } } 7.循环体如包括有一个以上的语句,则必须用__________括起来,组成复合语句。 8. 在双重循环中,如果在内层循环中使用了break语句,它将不会影响__________循环的继续执行。 9. 在一个循环体中,如果同时使用了break和continue语句,__________语句将首先执行,因为它出现在循环的更早位置。 10. 以下代码段将打印出__________。 for(int i = 1; i <= 5; i++) { for(int j = 1; j <= i; j++) { printf("*"); } printf(" "); } 11. 在以下代码段中,填入适当的语句使内层循环在j == 3时退出。 for(int i = 0; i < 5; i++) { for(int j = 0; j < 5; j++) { if(j == 3) { __________; } // ... } } 12. 以下代码段将计算并打印1到10之间所有偶数的和,请填空。 int sum = 0; for(int i = 1; i <= 10; i++) { if(i % 2 != 0) { __________; } sum += i; } printf("Sum of even numbers: %d ", sum); 13. 当外层循环变量为i,内层循环变量为j时,以下代码段将打印出一个__________。 for(i = 1; i <= 5; i++) { for(j = 1; j <= 5; j++) { printf("*"); } printf(" "); } 14. 在以下代码段中,break语句的作用是__________内层循环。 15. 在以下代码段中,continue语句的作用是__________当前迭代,并检查循环条件以决定是否进行下一次迭代。 二、单项选择题(本大题共15小题,每题2分,共30分) 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.下面哪个循环语句适合在已知循环次数的情况下使用?( ) A.while循环 B. for循环 C. do-while循环 D. return语句 5.下面哪个循环语句适合在循环次数未知的情况下使用?( ) A. while循环 B. for循环 C. do-while循环 D. exit 6.设有程序段 int k=10;while(k=0) k=k-1;下面描述中正确的是( )。 A. while循环执行10次 B.循环是无限循环 C.循环体语句一次也不执行 D.循环体语句执行一次 7.下面程序的输出结果是 ( )。 int k,j,s; for(k=2;k<6;k++,k++) { s=1; for(j=k;j<6;j++) s+=j;} printf("%d ",s); A.1 B.9 C.11 D.10 8.下面的代码段输出的结果是什么?( ) for(int i = 0; i < 3; i++){ for(int j = 0; j < 3; j++){ if(i == 1 && j == 1){ break; } printf("%d %d ", i, j); } } A.0 0 0 1 0 2 1 0 1 1 2 0 2 1 2 2 B.0 0 0 1 0 2 1 0 1 1 1 2 2 0 2 1 2 2 C. 0 0 0 1 0 2 1 0 1 1 1 2 2 0 2 1 D.0 0 0 1 0 2 1 0 1 1 1 2 2 0 2 1 2 9.下面的代码段输出的结果是什么?( ) for(int i = 0; i < 5; i++){ if(i == 3){ break; } printf("%d ", i); } A.0 1 2 B.0 1 2 3 C.0 1 2 3 4 D.0 1 2 3 4 5 10.下面的代码段输出的结果是什么?( ) for(int i = 0; i < 5; i++){ if(i == 3){ continue; } printf("%d ", i); } A.0 1 2 3 4 B.0 1 2 4 C. 0 1 2 3 4 5 D.0 1 2 3 4 5 6 11.下面的代码段输出的结果是什么?( ) for(int i = 0; i < 3; i++){ for(int j = 0; j < 3; j++){ if(i + j == 2){ break; } printf("%d %d ", i, j); } } A.0 0 0 1 1 0 1 1 2 0 2 1 2 2 B. 0 0 0 1 0 2 1 0 1 1 1 2 2 0 2 1 2 2 C. 0 0 0 1 0 2 1 0 1 1 1 2 2 0 2 1 D.0 0 0 1 0 2 1 0 1 1 1 2 2 0 2 1 2 12. 在以下C语言代码片段中,关于输出结果的说法正确的是( )。 int i, j; for(i = 0; i < 5; i++) { for(j = 0; j < 5; j++) { if(i == j) { break; } printf("%d%d ", i, j); } } A. 输出结果为:0011 22 33 44 B. 输出结果为:0011 22 33 44 55 C. 输出结果为:0011 22 33 44 55 66 77 88 99 D. 输出结果为:0011 22 33 44 55 66 77 88 13. 关于C语言中break和continue语句的说法,以下哪项是错误的?( ) A. break语句可以用于switch和循环结构中,用于跳出当前结构 B. continue语句只能用于循环结构中,用于跳过本次循环的剩余代码,进入下一次循环 C. 在多层循环嵌套中,break语句只能跳出最内层循环 D. 在多层循环嵌套中,continue语句会跳过当前层循环的剩余代码,进入下一次循环 14. 在以下C语言代码片段中,执行后的输出结果是什么?( ) int i = 0; while(i < 10) { i++; if(i % 2 == 0) { continue; } printf("%d ", i); } A. 1 3 5 7 9 B. 2 4 6 8 10 C. 1 2 3 4 5 6 7 8 9 10 D. 1 3 5 7 15. 在以下C语言代码片段执行完毕后,变量sum的值是多少?( ) int i, j, sum = 0; for(i = 1; i <= 5; i++) { for(j = 1; j <= i; j++) { if(i == j) { break; } sum += j; } } A. 10 B. 15 C. 20 D. 25 三、判断题(本大题共6小题,每题2分,共12分) 1. 在C语言中,双重循环就是指循环体内又包含了一个循环结构。( ) 2. 在双重循环中,内层循环的循环控制变量可以与外层循环的循环控制变量同名。( ) 3. 使用break语句可以立即退出当前所在的循环。( ) 4. continue语句的作用是结束当前循环,开始下一次循环。( ) 5. 在循环结构中,break语句和continue语句可以互换使用,不影响程序运行结果。( ) 6. 在双重循环中,如果内层循环使用了break语句,则外层循环也会被终止。( ) 四、程序填空题(本大题共2小题,每题8分,共16分) 1.#include <stdio.h> int main() { int i, j; for(i = 1; i <= 5; i++) { // 外层循环 for(j = 1; j <= i; j++) { // 内层循环 if (i == ____________) { // 填空处 ____________; // 填空处 } printf("*"); } printf(" "); } return 0; } 请填写合适的代码,使得程序打印出一个直角三角形,当外层循环变量i等于3时,内层循环提前结束。 2.#include <stdio.h> int main() { int sum = 0; for(int i = 1; i <= 10; i++) { if (i % 2 == 0) { ____________; // 填空处 } sum += i; } printf("The sum is: %d ", sum); return 0; } 请填写合适的代码,使得程序计算1到10之间所有奇数的和。 五、阅读程序题(本大题共12分) 1.#include <stdio.h> int main() { int i, j; for(i = 1; i <= 5; i++) { // 外层循环 for(j = 1; j <= 5; j++) { // 内层循环 if(j == i) { continue; // 当内层循环变量等于外层循环变量时 } printf("%d ", j); } printf(" "); } return 0; } (1)请描述程序运行后输出的结果。 (2)程序中的continue语句有什么作用? 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $$

资源预览图

《C语言程序设计》(四)循环结构程序设计 - 知识点训练卷 重庆市计算机类 考纲百套卷 第51卷
1
《C语言程序设计》(四)循环结构程序设计 - 知识点训练卷 重庆市计算机类 考纲百套卷 第51卷
2
《C语言程序设计》(四)循环结构程序设计 - 知识点训练卷 重庆市计算机类 考纲百套卷 第51卷
3
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。