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

2025-08-18
| 2份
| 7页
| 109人阅读
| 1人下载

资源信息

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

内容正文:

山东省春季高考技能测试 C语言程序设计第六套(原卷版) 第 一 题 程序改错题 本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。 程序功能:从键盘输入5个互不相同的整数到一维数组a中,找出数组中最大的元素,并从数组中删除该值,再输出剩余数组元素。 Program1.c代码(首行数字为行号)如下: 1 #include <stdio.h> 2 #define N 5 3 int main() 4 { 5 int a[N],max=0,i,t; 6 for(i=0;i<N;i++) 7 scanf("%d",&a[N]); 8 for(i=0;i<N;i++) 9 { 10 if(a[i]>max) 11 { 12 a[i]=max; 13 t=i; 14 } 15 } 16 printf("最大值为:%d ",max); 17 for(i=t+1;i<=N-1;i++) 18 a[i+1]=a[i]; 19 for(i=0;i<N-1;i++) 20 printf("%d",a[i]); 21 return 0; 22 } 答案: 【1】错误行号: 正确代码: 【2】错误行号: 正确代码: 【3】错误行号: 正确代码: 第 二 题 程序填空题 请考生将【序号】处所缺的多行程序代码填写到考试系统中对应的答题区域,实现程序功能。 程序功能:定义长度为5的一维数组a和b。编写函数add()将两个数组中下标相同的元素相加,如果和能被4整除,就将其存入数组c;如果和不能被4整除,就将其乘以4再存入数组c,并在主函数中输出数组c。 Program2.c代码如下: #include <stdio.h> int add(int a,int b) { int sum; sum=a+b; 【1】 } int main() { int a[5],b[5],c[5],i; printf("输入数组a的元素值: "); for(i=0;i<5;i+ +) scanf("%d",&a[i]); printf("输入数组b的元素值: "); for(i=0;i<5;i++) scanf("%d",&b[i]); for(i=0;i<5;i++) c[i]=add(a[i],b[i]); printf("输出数组c: "); for(i=0;i<5;i++) printf("%d ",c[i]); return 0; } 答案: 【1】 第 三 题 编程题 请考生将编写的程序代码填写到考试系统中对应的答题区域。 程序功能:自定义函数splitNum(),实现对一个三位正整数各位进行拆分。在主函数中从键盘输入一个三位正整数,并调用自定义函数输出拆分后百位、十位、个位数字。例如输入185,输出1,8,5。 答案: 程序代码: 第 四 题 编程题 请考生将编写的程序代码填写到考试系统中对应的答题区域。 程序功能:输入一个长度不大于80的字符串,编写程序将字符串中的大写字母转换成相应的小写字母,将小写字母转换成相应的大写字母,其余字符不变,并输出转换后的字符串。例如:输入”TYU##xyz”,转换后输出”tyu##XYZ”。 答案: 程序代码: 学科网(北京)股份有限公司 学科网(北京)股份有限公司原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 1 #include <stdio.h> 2 #define N 5 3 int main() 4 { 5 int a[N],max=0,i,t; 6 for(i=0;i<N;i++) 7 scanf("%d",&a[N]); 8 for(i=0;i<N;i++) 9 { 10 if(a[i]>max) 11 { 12 a[i]=max; 13 t=i; 14 } 15 } 16 printf("ОЬ┤зох╬ф:%d ",max); 17 for(i=t+1;i<=N-1;i++) 18 a[i+1]=a[i]; 19 for(i=0;i<N-1;i++) 20 printf("%d",a[i]); 21 return 0; 22 } #include <stdio.h> int add(int a,int b) { int sum; sum=a+b; 【1】 } int main() { int a[5],b[5],c[5],i; printf("输入数组a的元素值: "); for(i=0;i<5;i+ +) scanf("%d",&a[i]); printf("输入数组b的元素值: "); for(i=0;i<5;i++) scanf("%d",&b[i]); for(i=0;i<5;i++) c[i]=add(a[i],b[i]); printf("输出数组c: "); for(i=0;i<5;i++) printf("%d ",c[i]); return 0; } $$ 山东省春季高考技能测试 C语言程序设计第六套(答案版) 第 一 题 程序改错题 本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。 程序功能:从键盘输入5个互不相同的整数到一维数组a中,找出数组中最大的元素,并从数组中删除该值,再输出剩余数组元素。 Program1.c代码(首行数字为行号)如下: 1 #include <stdio.h> 2 #define N 5 3 int main() 4 { 5 int a[N],max=0,i,t; 6 for(i=0;i<N;i++) 7 scanf("%d",&a[N]); 8 for(i=0;i<N;i++) 9 { 10 if(a[i]>max) 11 { 12 a[i]=max; 13 t=i; 14 } 15 } 16 printf("最大值为:%d ",max); 17 for(i=t+1;i<=N-1;i++) 18 a[i+1]=a[i]; 19 for(i=0;i<N-1;i++) 20 printf("%d",a[i]); 21 return 0; 22 } 答案:(满分18分) 【1】错误行号:7 正确代码:scanf("%d", &a[i]); 【2】错误行号:12 正确代码:max = a[i]; 【3】错误行号:18 正确代码:a[i-1] = a[i]; 第 二 题 程序填空题 请考生将【序号】处所缺的多行程序代码填写到考试系统中对应的答题区域,实现程序功能。 程序功能:定义长度为5的一维数组a和b。编写函数add()将两个数组中下标相同的元素相加,如果和能被4整除,就将其存入数组c;如果和不能被4整除,就将其乘以4再存入数组c,并在主函数中输出数组c。 Program2.c代码如下: #include <stdio.h> int add(int a,int b) { int sum; sum=a+b; 【1】 } int main() { int a[5],b[5],c[5],i; printf("输入数组a的元素值: "); for(i=0;i<5;i+ +) scanf("%d",&a[i]); printf("输入数组b的元素值: "); for(i=0;i<5;i++) scanf("%d",&b[i]); for(i=0;i<5;i++) c[i]=add(a[i],b[i]); printf("输出数组c: "); for(i=0;i<5;i++) printf("%d ",c[i]); return 0; } 答案:(满分18分) if (sum % 4 == 0) { return sum; } else { return sum * 4; } 第 三 题 编程题 请考生将编写的程序代码填写到考试系统中对应的答题区域。 程序功能:自定义函数splitNum(),实现对一个三位正整数各位进行拆分。在主函数中从键盘输入一个三位正整数,并调用自定义函数输出拆分后百位、十位、个位数字。例如输入185,输出1,8,5。 答案:(满分28分) 程序代码: #include <stdio.h> // 自定义函数:拆分三位正整数的百位、十位、个位 void splitNum(int num, int *hundred, int *ten, int *unit) { *hundred = num / 100; // 获取百位数字 *ten = (num % 100) / 10; // 获取十位数字 *unit = num % 10; // 获取个位数字 } int main() { int num; int h, t, u; // 分别存储百位、十位、个位数字 printf("请输入一个三位正整数:"); scanf("%d", &num); // 调用自定义函数拆分数字 splitNum(num, &h, &t, &u); // 输出拆分结果 printf("%d,%d,%d ", h, t, u); return 0; } 第 四 题 编程题 请考生将编写的程序代码填写到考试系统中对应的答题区域。 程序功能:输入一个长度不大于80的字符串,编写程序将字符串中的大写字母转换成相应的小写字母,将小写字母转换成相应的大写字母,其余字符不变,并输出转换后的字符串。例如:输入”TYU##xyz”,转换后输出”tyu##XYZ”。 答案:(满分36分) 程序代码: #include <stdio.h> // 自定义函数:拆分三位正整数的百位、十位、个位 void splitNum(int num, int *hundred, int *ten, int *unit) { *hundred = num / 100; // 获取百位数字 *ten = (num % 100) / 10; // 获取十位数字 *unit = num % 10; // 获取个位数字 } int main() { int num; int h, t, u; // 分别存储百位、十位、个位数字 printf("请输入一个三位正整数:"); scanf("%d", &num); // 调用自定义函数拆分数字 splitNum(num, &h, &t, &u); // 输出拆分结果 printf("%d,%d,%d ", h, t, u); return 0; } 5.综合素质(15分) (1)考生全程无不当操作(如随意插拔设备、误触系统设置等)且能正确使用考试系统功能(如提交答案、标记题目等);5分 (2)按题目要求正确保存相关素材,规范答题;5分 (3)考生全程无任何违规行为(如交头接耳、携带违禁物品、偷看他人答案等);5分 【根据考生实际答题情况,即使无任何作答,只要参加考试并登录考试系统即有30分,因此大胆猜测软件专业技能考试数据库和C语言各有15分综合素质分,仅提供参考。阅卷时需按照卷面满分各科100分进行阅卷,阅卷结束后,根据需要自行补充30分综合素质分】 学科网(北京)股份有限公司原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $$

资源预览图

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