山东省春季高考《C语言程序设计》技能考试模拟卷(三)

2025-08-18
| 2份
| 8页
| 113人阅读
| 2人下载

资源信息

学段 中职
学科 职教专业课
课程 C语言程序设计
教材版本 -
年级 -
章节 -
类型 题集-专项训练
知识点 分支结构,循环结构,数组,函数,指针
使用场景 同步教学-技能实训
学年 2025-2026
地区(省份) 山东省
地区(市) -
地区(区县) -
文件格式 ZIP
文件大小 171 KB
发布时间 2025-08-18
更新时间 2025-08-18
作者 -逆袭学霸-
品牌系列 学易金卷·阶段检测模拟卷
审核时间 2025-08-18
下载链接 https://m.zxxk.com/soft/53506719.html
价格 3.00储值(1储值=1元)
来源 学科网

内容正文:

山东省春季高考技能测试 C语言程序设计第三套(原卷版) 第 一 题 程序改错题 本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。 程序功能:统计0至9之间的不同的3个数字组成的所有三位数的个数。 Program1.c代码(首行数字为行号)如下: 1 #include <stdio.h> 2 int main() 3{ 4 int i=0,j=0,k=0,count=0; 5 for(i=1;i<=9;i++) 6 { 7 if(i==j) continue; 8 else 9 { 10 for(j=0;j<=9;j++) 11 { 12 if(i==j) continue; 13 else 14 { 15 for(k=0;k<=9;k++) 16 { 17 if((k==i)&&(k==j)) 18 break; 19 else 20 count++; 21 } 22 } 23 } 24 } 25 } 26 printf("%c",count); 27 return 0; 28 } 答案: 【1】错误行号: 正确代码: 【2】错误行号: 正确代码: 【3】错误行号: 正确代码: 第 二 题 程序填空题 请考生将【序号】处所缺的多行程序代码填写到考试系统中对应的答题区域,实现程序功能。 程序功能:将给定的一维数组的元素分别按照原顺序和逆序输出。 Program2.c代码如下: #include <stido.h> #define N 7 void convert(int a[]) { int i,temp; 【1】 } int main() { int a[N]={2,3,5,8,13,21,34}; int i; printf(" 原数列: "); for(i=0;i<N;i++) printf("%d",a[i]); convert(a); printf(" 逆序数列: "); for(i=0;i<N;i++) printf("%d",a[i]); printf(" "); return 0; } 答案: 【1】 第 三 题 编程题 请考生将编写的程序代码填写到考试系统中对应的答题区域。 程序功能:输出10到50之间所有个位数与十位数之积小于个位数与十位数之和的整数,例如:数字21,2*1=2,2+1=3。 答案: 程序代码: 第 四 题 编程题 请考生将编写的程序代码填写到考试系统中对应的答题区域。 程序功能:幼儿园里有10个小朋友在玩英文字母排序游戏,每个小朋友分别随机代表一个字母,现在已经有9个小朋友分配到字母并且按照字母升序站好了队伍,将当前队伍定义为数组char a[10]="dfghjmqtw"。如果最后一个小朋友圆圆代表字母k,她应该站到哪里?请编写程序将圆圆代表的字母k按照顺序插到数组中,输出包括k的字母序列。 答案: 程序代码: 学科网(北京)股份有限公司 学科网(北京)股份有限公司原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 #include <stdio.h> int main() { int i=0,j=0,k=0,count=0; for(i=1;i<=9;i++) { if(i==j) continue; else { for(j=0;j<=9;j++) { if(i==j) continue; else { for(k=0;k<=9;k++) { if((k==i)&&(k==j)) break; else count++; } } } } } printf("%c",count); return 0; } #include <stdio.h> #define N 7 void convert(int a[]) { int i,temp; 【1】 } int main() { int a[N]= {2,3,5,8,13,21,34}; int i; printf(" 原数列: "); for(i=0; i<N; i++) printf("%d",a[i]); convert(a); printf(" 逆序数列: "); for(i=0; i<N; i++) printf("%d",a[i]); printf(" "); return 0; } $$ 山东省春季高考技能测试 C语言程序设计第三套(答案版) 第 一 题 程序改错题 本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。 程序功能:统计0至9之间的不同的3个数字组成的所有三位数的个数。 Program1.c代码(首行数字为行号)如下: 1 #include <stdio.h> 2 int main() 3{ 4 int i=0,j=0,k=0,count=0; 5 for(i=1;i<=9;i++) 6 { 7 if(i==j) continue; 8 else 9 { 10 for(j=0;j<=9;j++) 11 { 12 if(i==j) continue; 13 else 14 { 15 for(k=0;k<=9;k++) 16 { 17 if((k==i)&&(k==j)) 18 break; 19 else 20 count++; 21 } 22 } 23 } 24 } 25 } 26 printf("%c",count); 27 return 0; 28 } 答案:(满分18分) 【1】错误行号:7 正确代码:删除此行 【2】错误行号:17 正确代码:if((k==i)||(k==j)) 【3】错误行号:26 正确代码:printf("%d",count); 第 二 题 程序填空题 请考生将【序号】处所缺的多行程序代码填写到考试系统中对应的答题区域,实现程序功能。 程序功能:将给定的一维数组的元素分别按照原顺序和逆序输出。 Program2.c代码如下: #include <stido.h> #define N 7 void convert(int a[]) { int i,temp; 【1】 } int main() { int a[N]={2,3,5,8,13,21,34}; int i; printf(" 原数列: "); for(i=0;i<N;i++) printf("%d",a[i]); convert(a); printf(" 逆序数列: "); for(i=0;i<N;i++) printf("%d",a[i]); printf(" "); return 0; } 答案:(满分18分) for (i = 0; i < N / 2; i++) { temp = a[i]; a[i] = a[N - 1 - i]; a[N - 1 - i] = temp; } 第 三 题 编程题 请考生将编写的程序代码填写到考试系统中对应的答题区域。 程序功能:输出10到50之间所有个位数与十位数之积小于个位数与十位数之和的整数,例如:数字21,2*1=2,2+1=3。 答案:(满分28分) 程序代码: #include <stdio.h> int main() { int num, tens, units; // 遍历10到50之间的所有整数 for (num = 10; num <= 50; num++) { // 分离十位数 tens = num / 10; // 分离个位数 units = num % 10; // 判断个位数与十位数之积是否小于它们之和 if (tens * units < tens + units) { printf("%d ", num); } } printf(" "); return 0; } 第 四 题 编程题 请考生将编写的程序代码填写到考试系统中对应的答题区域。 程序功能:幼儿园里有10个小朋友在玩英文字母排序游戏,每个小朋友分别随机代表一个字母,现在已经有9个小朋友分配到字母并且按照字母升序站好了队伍,将当前队伍定义为数组char a[10]="dfghjmqtw"。如果最后一个小朋友圆圆代表字母k,她应该站到哪里?请编写程序将圆圆代表的字母k按照顺序插到数组中,输出包括k的字母序列。 答案:(满分36分) 程序代码: #include <stdio.h> #include <string.h> int main() { // 初始化已有9个字母的数组,预留一个位置给'k' char a[10] = "dfghjmqtw"; char insert_char = 'k'; int i, j; int len = strlen(a); // 获取当前数组长度(9) // 找到插入位置:第一个大于'k'的字符位置 for (i = 0; i < len; i++) { if (a[i] > insert_char) { break; } } // 将插入位置后的所有字符向后移动一位 for (j = len; j > i; j--) { a[j] = a[j - 1]; } // 插入字母'k' a[i] = insert_char; // 输出结果 printf("插入后的字母序列: %s ", a); return 0; } 5.综合素质(15分) (1)考生全程无不当操作(如随意插拔设备、误触系统设置等)且能正确使用考试系统功能(如提交答案、标记题目等);5分 (2)按题目要求正确保存相关素材,规范答题;5分 (3)考生全程无任何违规行为(如交头接耳、携带违禁物品、偷看他人答案等);5分 【根据考生实际答题情况,即使无任何作答,只要参加考试并登录考试系统即有30分,因此大胆猜测软件专业技能考试数据库和C语言各有15分综合素质分,仅提供参考。阅卷时需按照卷面满分各科100分进行阅卷,阅卷结束后,根据需要自行补充30分综合素质分】 学科网(北京)股份有限公司原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $$

资源预览图

山东省春季高考《C语言程序设计》技能考试模拟卷(三)
1
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。