第70卷 循环程序应用设计 《程序设计》重庆市(高职分类)《计算机类考纲百套卷》

2026-07-27
| 2份
| 17页
| 26人阅读
| 0人下载

内容正文:

编写说明:2027版重庆市高等职业教育分类考试计算机类《考纲百套卷》,依据《2027年重庆市高等职业教育分类考试专业综合理论测试计算机类考试说明》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共99份试卷,其中知识训练卷76份、专题训练卷16份、课程综合卷7份。 本试卷是第70卷,为知识训练卷,按《程序设计》中“循环程序应用设计”范围和要求编写。具体内容为:10.掌握累加、累乘类程序的设计。 重庆市高职分类考试 计算机类《考纲百套卷》 第70卷 程序设计——循环程序应用设计 (考试时间:45分钟 满分:100分) 一、填空题(共10题,每题3分,共30分) 1.在循环中把每次计算得到的结果不断累加,常用的变量称为__________变量。 【答案】累加 【解析】累加变量保存前面各轮计算的和,通常先初始化为0。 2.计算1到n的连续乘积时,乘积变量通常初始化为__________。 【答案】1 【解析】乘法累计的初值应为1,初始化为0会使最终乘积恒为0。 3.循环中每处理一次数据就把计数变量加1,这种变量称为__________变量。 【答案】计数 【解析】计数变量用于记录满足条件或已处理数据的数量。 4.求一组数据平均值时,通常先求总和,再用总和除以数据的__________。 【答案】个数 【解析】平均值等于总和除以参与计算的数据个数。 5.逐位处理整数时,使用n%10可以得到n的__________位数字。 【答案】个位 【解析】整数除以10的余数就是当前个位数字。 6.逐位处理整数后,常用n/=10删除已经处理的__________位。 【答案】个位 【解析】整除10会去掉当前个位,下一轮即可处理新的个位。 7.寻找一组数据中的最大值时,初始最大值应设置为第一个__________。 【答案】数据 【解析】用第一个数据作为初值,可避免随意设置不合适的比较基准。 8.循环中若满足条件就执行continue,当前轮次后面的语句将被__________。 【答案】跳过 【解析】continue用于跳过当前迭代剩余部分。 9.累加、计数和求最大值程序都需要先设置合理的__________值。 【答案】初始 【解析】初始值直接影响后续累计、比较和最终结果。 10.循环程序完成后输出结果时,应根据题意选择正确的__________变量。 【答案】结果 【解析】不同任务可能需要输出sum、count、max或其他结果变量。 二、单项选择题(共15题,每题2分,共30分) 1.计算1到100的整数和,循环中的累加变量初值应为(  )。 A.0 B.1 C.100 D.-1 【答案】A 【解析】求和从0开始,逐项把当前数加入累加变量。 2.计算1到n的阶乘,乘积变量初值应为(  )。 A.0 B.1 C.n D.-1 【答案】B 【解析】阶乘采用乘法累计,乘法单位元为1。 3.统计输入的10个数中偶数的个数,最合适的变量是(  )。 A.sum B.product C.count D.average 【答案】C 【解析】count用于记录满足偶数条件的数据数量。 4.求数组平均值时,正确的计算顺序通常是(  )。 A.先除以首元素再累加 B.只取最大值作为平均值 C.把所有元素相乘后加1 D.先累加再除以元素个数 【答案】D 【解析】平均值由总和除以元素个数得到。 5.逐位求整数各位数字之和时,获得当前个位数字应使用(  )。 A.n % 10 B.n / 10 C.n * 10 D.n + 10 【答案】A 【解析】n%10返回n除以10的余数,即当前个位数字。 6.逐位处理整数时,完成当前个位后常使用( )删除该位。 A.n += 10 B.n /= 10 C.n *= 10 D.n -= 10 【答案】B 【解析】整除10会去掉当前个位,使下一轮处理新的个位。 7.求一组正数最大值时,较稳妥的初始方式是(  )。 A.把max固定为0且忽略负数情况 B.把max设置为最后一个数据后不比较 C.把第一个数据作为max初值 D.把max设置为平均值且不更新 【答案】C 【解析】用第一个数据作为初值,再从第二个数据开始比较更通用。 8.循环中continue语句的主要作用是(  )。 A.结束整个程序 B.把所有变量清零 C.自动返回主函数 D.跳过当前迭代剩余部分 【答案】D 【解析】continue只跳过当前轮次后续语句。 9.若要统计满足条件的数据并求其总和,通常需要(  )。 A.同时维护sum和count B.只维护一个product C.只保存最后一次输入 D.只设置一个不变的常量 【答案】A 【解析】sum记录总和,count记录满足条件的数据个数。 10.循环程序中把控制变量更新写在continue之后,最需要防止(  )。 A.结果自动变成最大值 B.循环无法结束 C.输入语句自动消失 D.程序一定只执行一次 【答案】B 【解析】continue可能跳过更新语句,使循环条件一直成立。 11.下列代码适合计算1到n平方和的是(  )。 A.sum *= i + i B.sum = i / i C.sum += i * i D.sum -= i * i 【答案】C 【解析】每轮把当前i的平方加入sum即可得到平方和。 12.若要判断一个整数是否为回文数,常见方法是(  )。 A.只比较首位与末位一次 B.只计算数字总和 C.只判断数字是否为偶数 D.逐位取出并反向构造数字 【答案】D 【解析】反向构造原数的数字序列,再与原数比较可判断回文。 13.在循环中寻找第一个满足条件的元素,找到后通常使用(  )。 A.break结束搜索 B.continue重复处理同一元素 C.把索引减一并永久停留 D.重新初始化整个数组 【答案】A 【解析】找到第一个目标后break可结束当前搜索循环。 14.当循环次数由输入n决定时,较合理的循环条件是(  )。 A.i == 0且不更新 B.i <= n C.i > n且从1开始递增 D.i < 0且从1开始递增 【答案】B 【解析】从1开始处理到n时,i<=n可覆盖全部数据。 15.复杂循环程序的结果核对,最可靠的方法是(  )。 A.只看代码行数 B.只看最后一个条件 C.记录关键变量每轮变化 D.忽略初值直接猜结果 【答案】C 【解析】逐轮记录变量和分支路径可以发现累加、计数和退出条件错误。 三、判断题(共12题,每题1分,共12分) 1.累加变量通常初始化为0。(  ) 【答案】√ 【解析】求和的单位元是0。 2.累乘变量通常初始化为0。(  ) 【答案】× 【解析】乘法累计通常初始化为1,初始化为0会使结果为0。 3.计数变量用于记录所有数据的总和。(  ) 【答案】× 【解析】计数变量记录数量,总和应由累加变量保存。 4.n%10可以得到正整数n的个位数字。(  ) 【答案】√ 【解析】除以10的余数就是个位数字。 5.n/=10会把当前整数的个位删除。(  ) 【答案】√ 【解析】整除10后,整数部分去掉原来的个位。 6.求平均值时只需要把数据相乘再除以个数。(  ) 【答案】× 【解析】平均值应使用数据总和除以数据个数。 7.求最大值时把max初始化为0对所有整数数据都安全。(  ) 【答案】× 【解析】如果数据全为负数,max初始化为0会得到错误结果。 8.continue可能使当前迭代后面的更新语句被跳过。(  ) 【答案】√ 【解析】更新语句若位于continue之后就可能无法执行。 9.break适合在找到第一个目标后结束当前搜索循环。(  ) 【答案】√ 【解析】找到目标后break可以避免继续无必要搜索。 10.循环次数越多,程序结果就一定越准确。(  ) 【答案】× 【解析】次数必须与题意和数据范围匹配,过多或过少都可能错误。 11.逐轮记录关键变量有助于核对复杂循环程序。(  ) 【答案】√ 【解析】记录变化可以定位条件、更新和退出时机。 12.只要程序能够编译,累加变量的初值就一定正确。(  ) 【答案】× 【解析】编译通过不代表算法初值和计算逻辑正确。 四、程序填空题(共2题,每题8分,共16分) 1.阅读下列程序,补充空格处的代码。程序统计1到n中满足条件的数并累加其平方。 int i, n = 12, sum = 0, count = 0; for (i = 1; i <= n; i++) { if (i % 3 __________ 0) { __________; } sum += i * i; count++; if (count == 3) { break; } } printf("%d %d %d", i, sum, count); (1)第一个空应填什么?(2)第二个空应填什么? 【答案】(1)==;(2)continue; 【解析】3的倍数应跳过,因此条件填i%3==0,第二空填continue。i=1、2分别累计1和4,i=3跳过,i=4、5累计16和25,count达到3后break,循环更新使i变为6,最终输出6 46 3。 2.阅读下列程序,补充空格处的代码。程序使用循环逐位处理整数,并在累计值超过目标后停止。 int n = 7352, digit, total = 0, count = 0; while (n > 0) { digit = n % 10; n /= 10; if (digit == 0) { __________; } if (digit % 2 == 0) { total += digit * 2; } else { total += digit; } count++; if (total > 12) { __________; } } printf("%d %d %d", n, total, count); (1)第一个空应填什么?(2)第二个空应填什么? 【答案】(1)continue;(2)break; 【解析】数字为0时不参与后续计算,应填continue;累计值超过12后结束循环,应填break。7352从个位2开始,total依次为4、9、12、19,最后一次处理数字7后break,n已经变为0,count为4,最终输出0 19 4。 五、程序阅读题(共2题,每题6分,共12分) 1.阅读下列程序并回答问题。 int i, j, sum = 0, hits = 0, row_sum; for (i = 1; i <= 5; i++) { row_sum = 0; for (j = 1; j <= 5; j++) { if ((i + j) % 4 == 0) continue; if (i + j > 7) break; row_sum += i * j; hits++; } sum += row_sum; sum += i; } printf("%d %d", sum, hits); (1)何时执行continue?(2)何时执行break?(3)最终sum和hits是多少? 【答案】(1)i+j能被4整除;(2)i+j大于7;(3)sum=119,hits=16。 【解析】continue在i+j为4的倍数时触发,break在i+j大于7时触发。逐轮记录外层结束后的sum和hits:i=1为13、4;i=2为41、8;i=3为71、11;i=4为99、14;i=5为119、16。因此最终sum=119、hits=16。 2.阅读下列程序并回答问题。 int n = 7352, digit, total = 0, count = 0, even_total = 0; while (n > 0) { digit = n % 10; n /= 10; if (digit == 0) continue; if (digit % 2 == 0) { even_total += digit; total += digit * 2; } else { total += digit; } count++; if (total > 12) break; } printf("%d %d %d", n, total, count); (1)每轮如何取得当前数字?(2)何时结束循环?(3)最终输出什么? 【答案】(1)digit=n%10;(2)total大于12时break;(3)输出0 19 4。 【解析】每轮先用n%10取个位,再用n/=10删除个位。数字序列为2、5、3、7,total依次为4、9、12、19,最后一次累计后满足total>12并break;此时n已为0,count为4,输出0 19 4。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $ 编写说明:2027版重庆市高等职业教育分类考试计算机类《考纲百套卷》,依据《2027年重庆市高等职业教育分类考试专业综合理论测试计算机类考试说明》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共99份试卷,其中知识训练卷76份、专题训练卷16份、课程综合卷7份。 本试卷是第70卷,为知识训练卷,按《程序设计》中“循环程序应用设计”范围和要求编写。具体内容为:10.掌握累加、累乘类程序的设计。 重庆市高职分类考试 计算机类《考纲百套卷》 第70卷 程序设计——循环程序应用设计 (考试时间:45分钟 满分:100分) 一、填空题(共10题,每题3分,共30分) 1.在循环中把每次计算得到的结果不断累加,常用的变量称为__________变量。 2.计算1到n的连续乘积时,乘积变量通常初始化为__________。 3.循环中每处理一次数据就把计数变量加1,这种变量称为__________变量。 4.求一组数据平均值时,通常先求总和,再用总和除以数据的__________。 5.逐位处理整数时,使用n%10可以得到n的__________位数字。 6.逐位处理整数后,常用n/=10删除已经处理的__________位。 7.寻找一组数据中的最大值时,初始最大值应设置为第一个__________。 8.循环中若满足条件就执行continue,当前轮次后面的语句将被__________。 9.累加、计数和求最大值程序都需要先设置合理的__________值。 10.循环程序完成后输出结果时,应根据题意选择正确的__________变量。 二、单项选择题(共15题,每题2分,共30分) 1.计算1到100的整数和,循环中的累加变量初值应为(  )。 A.0 B.1 C.100 D.-1 2.计算1到n的阶乘,乘积变量初值应为(  )。 A.0 B.1 C.n D.-1 3.统计输入的10个数中偶数的个数,最合适的变量是(  )。 A.sum B.product C.count D.average 4.求数组平均值时,正确的计算顺序通常是(  )。 A.先除以首元素再累加 B.只取最大值作为平均值 C.把所有元素相乘后加1 D.先累加再除以元素个数 5.逐位求整数各位数字之和时,获得当前个位数字应使用(  )。 A.n % 10 B.n / 10 C.n * 10 D.n + 10 6.逐位处理整数时,完成当前个位后常使用( )删除该位。 A.n += 10 B.n /= 10 C.n *= 10 D.n -= 10 7.求一组正数最大值时,较稳妥的初始方式是(  )。 A.把max固定为0且忽略负数情况 B.把max设置为最后一个数据后不比较 C.把第一个数据作为max初值 D.把max设置为平均值且不更新 8.循环中continue语句的主要作用是(  )。 A.结束整个程序 B.把所有变量清零 C.自动返回主函数 D.跳过当前迭代剩余部分 9.若要统计满足条件的数据并求其总和,通常需要(  )。 A.同时维护sum和count B.只维护一个product C.只保存最后一次输入 D.只设置一个不变的常量 10.循环程序中把控制变量更新写在continue之后,最需要防止(  )。 A.结果自动变成最大值 B.循环无法结束 C.输入语句自动消失 D.程序一定只执行一次 11.下列代码适合计算1到n平方和的是(  )。 A.sum *= i + i B.sum = i / i C.sum += i * i D.sum -= i * i 12.若要判断一个整数是否为回文数,常见方法是(  )。 A.只比较首位与末位一次 B.只计算数字总和 C.只判断数字是否为偶数 D.逐位取出并反向构造数字 13.在循环中寻找第一个满足条件的元素,找到后通常使用(  )。 A.break结束搜索 B.continue重复处理同一元素 C.把索引减一并永久停留 D.重新初始化整个数组 14.当循环次数由输入n决定时,较合理的循环条件是(  )。 A.i == 0且不更新 B.i <= n C.i > n且从1开始递增 D.i < 0且从1开始递增 15.复杂循环程序的结果核对,最可靠的方法是(  )。 A.只看代码行数 B.只看最后一个条件 C.记录关键变量每轮变化 D.忽略初值直接猜结果 三、判断题(共12题,每题1分,共12分) 1.累加变量通常初始化为0。(  ) 2.累乘变量通常初始化为0。(  ) 3.计数变量用于记录所有数据的总和。(  ) 4.n%10可以得到正整数n的个位数字。(  ) 5.n/=10会把当前整数的个位删除。(  ) 6.求平均值时只需要把数据相乘再除以个数。(  ) 7.求最大值时把max初始化为0对所有整数数据都安全。(  ) 8.continue可能使当前迭代后面的更新语句被跳过。(  ) 9.break适合在找到第一个目标后结束当前搜索循环。(  ) 10.循环次数越多,程序结果就一定越准确。(  ) 11.逐轮记录关键变量有助于核对复杂循环程序。(  ) 12.只要程序能够编译,累加变量的初值就一定正确。(  ) 四、程序填空题(共2题,每题8分,共16分) 1.阅读下列程序,补充空格处的代码。程序统计1到n中满足条件的数并累加其平方。 int i, n = 12, sum = 0, count = 0; for (i = 1; i <= n; i++) { if (i % 3 __________ 0) { __________; } sum += i * i; count++; if (count == 3) { break; } } printf("%d %d %d", i, sum, count); (1)第一个空应填什么?(2)第二个空应填什么? 2.阅读下列程序,补充空格处的代码。程序使用循环逐位处理整数,并在累计值超过目标后停止。 int n = 7352, digit, total = 0, count = 0; while (n > 0) { digit = n % 10; n /= 10; if (digit == 0) { __________; } if (digit % 2 == 0) { total += digit * 2; } else { total += digit; } count++; if (total > 12) { __________; } } printf("%d %d %d", n, total, count); (1)第一个空应填什么?(2)第二个空应填什么? 五、程序阅读题(共2题,每题6分,共12分) 1.阅读下列程序并回答问题。 int i, j, sum = 0, hits = 0, row_sum; for (i = 1; i <= 5; i++) { row_sum = 0; for (j = 1; j <= 5; j++) { if ((i + j) % 4 == 0) continue; if (i + j > 7) break; row_sum += i * j; hits++; } sum += row_sum; sum += i; } printf("%d %d", sum, hits); (1)何时执行continue?(2)何时执行break?(3)最终sum和hits是多少?   2.阅读下列程序并回答问题。 int n = 7352, digit, total = 0, count = 0, even_total = 0; while (n > 0) { digit = n % 10; n /= 10; if (digit == 0) continue; if (digit % 2 == 0) { even_total += digit; total += digit * 2; } else { total += digit; } count++; if (total > 12) break; } printf("%d %d %d", n, total, count); (1)每轮如何取得当前数字?(2)何时结束循环?(3)最终输出什么?   原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $

资源预览图

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