内容正文:
山东省春季高考技能测试
C语言程序设计第三十七套(原卷版)
第 一 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:颜色性格分析。要求键盘输入颜色(字母),输出性格分析结果。例如,输入:R,输出:热情有活力!
Program1.c代码如下:
#include <stdio.h>
void main()
{
【1】 color;
printf("请输入待分析颜色:"); //红色R,绿色G,蓝色B,紫色P
【2】; //输入颜色值
【3】(color)
{
case 'R':
printf("热情有活力!");
break;
case 'G':
printf("青春有朝气!");
break;
case 'B':
printf("平静而理智!");
break;
case 'P':
printf("优雅且神秘!");
break;
【4】:
printf("还没有这个颜色分析,敬请期待!");
}
}
答案:
【1】
【2】
【3】
【4】
第 二 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:某小区门禁卡需设8位密码,设置后要加密存储。加密规则是每个字符后加3。下面程序实现加密存储,并输出加密后的密码字符串。例如,输入:abcddcba。输出:该门禁卡密码加密存储为:defggfed
Program2.c代码如下:
#include <stdio.h>
void main()
{
char 【1】;
int i;
printf("请设置门禁卡密码(需8位):");
gets(pwd);
for(【2】;i<8;i++)
pwd[i]=【3】+3;
printf("该门禁卡密码加密存储为:");
puts(【4】);
}
答案:
【1】
【2】
【3】
【4】
第 三 题 程序改错题
本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。
程序功能:班级评选志愿服务明星,每个小组推选志愿服务天数最多的学生参评。某小组志愿服务天数统计信息存在数组z[6]里,查找并输出数组z中最多的天数。
Program3.c代码(首行数字为行号)如下:
1 #include <stdio.h>
2 void main()
3 {
4 int i,max,z[6]={4,8,10,5,11,7};
5 max=z[0];
6 for(i=1;i<=6;i++)
7 if(z[i]!=max)
8 max=z[i];
9 printf("志愿服务天数最多的是:%f天",max);
10 }
答案:
【1】错误行号:
正确代码:
【2】错误行号:
正确代码:
【3】错误行号:
正确代码:
第 四 题 程序改错题
本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。
程序功能:三次机会猜数字游戏。输入数字与给定数字7相等,猜对退出;猜错3次程序结束。
Program4.c代码(首行数字为行号)如下:
1 #include <stdio.h>
2 #define NUM 7
3 void main()
4 {
5 int i=1,guess;
6 while(i<=3)
7 {
8 printf("第%d次猜数字:",i);
9 scanf("%d",&guess);
10 if(guess=NUM)
11 {
12 printf("猜对了,你真牛!");
13 continue;
14 }
15 else
16 printf("真可惜,猜错了!
");
17 i--;
18 }
19 }
答案:
【1】错误行号:
正确代码:
【2】错误行号:
正确代码:
【3】错误行号:
正确代码:
第 五 题 编程题
请考生将编写的程序代码填写到考试系统中对应的答题区域。
程序功能:计算1+1/2+1/3+1/4+……+1/n的和。
要求:定义func(int x)函数,返回1/x的值。main主函数输入正整数n,调用func()函数,计算并输出前n项的和,保留两位小数输出。
答案:
程序代码:
学科网(北京)股份有限公司
学科网(北京)股份有限公司原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
/*程序功能:某小区门禁卡需设8位密码,设置后要加密存储。加密规则是每个字符后加3。
下面程序实现加密存储,并输出加密后的密码字符串。例如,输入:abcddcba
输出:该门禁卡密码加密存储为:defggfed
program2.c代码如下:*/
#include <stdio.h>
void main()
{
char 【1】;
int i;
printf("请设置门禁卡密码(需8位):");
gets(pwd);
for(【2】;i<8;i++)
pwd[i]=【3】+3;
printf("该门禁卡密码加密存储为:");
puts(【4】);
}
#include <stdio.h>
void main()
{
int i,max,z[6]={4,8,10,5,11,7};
max=z[0];
for(i=1;i<=6;i++)
if(z[i]!=max)
max=z[i];
printf("志愿服务天数最多的是:%f天",max);
}
#include <stdio.h>
#define NUM 7
void main()
{
int i=1,guess;
while(i<=3)
{
printf("第%d次猜数字:",i);
scanf("%d",&guess);
if(guess=NUM)
{
printf("猜对了,你真牛!");
continue;
}
else
printf("真可惜,猜错了!
");
i--;
}
}
/*程序功能:颜色性格分析。要求键盘输入颜色(字母),输出性格分析结果。例如,输入:R,输出:热情有活力!
program1.c代码如下:*/
#include <stdio.h>
void main()
{
【1】 color;
printf("请输入待分析颜色:"); //红色R,绿色G,蓝色B,紫色P
【2】; //输入颜色值
【3】(color)
{
case 'R':
printf("热情有活力!");
break;
case 'G':
printf("青春有朝气!");
break;
case 'B':
printf("平静而理智!");
break;
case 'P':
printf("优雅且神秘!");
break;
【4】:
printf("还没有这个颜色分析,敬请期待!");
}
}
$
山东省春季高考技能测试
C语言程序设计第三十七套(答案版)
第 一 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:颜色性格分析。要求键盘输入颜色(字母),输出性格分析结果。例如,输入:R,输出:热情有活力!
Program1.c代码如下:
#include <stdio.h>
void main()
{
【1】 color;
printf("请输入待分析颜色:"); //红色R,绿色G,蓝色B,紫色P
【2】; //输入颜色值
【3】(color)
{
case 'R':
printf("热情有活力!");
break;
case 'G':
printf("青春有朝气!");
break;
case 'B':
printf("平静而理智!");
break;
case 'P':
printf("优雅且神秘!");
break;
【4】:
printf("还没有这个颜色分析,敬请期待!");
}
}
答案:(满分20分)
【1】char
【2】color = getchar()
【3】switch
【4】default
第 二 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:某小区门禁卡需设8位密码,设置后要加密存储。加密规则是每个字符后加3。下面程序实现加密存储,并输出加密后的密码字符串。例如,输入:abcddcba。输出:该门禁卡密码加密存储为:defggfed
Program2.c代码如下:
#include <stdio.h>
void main()
{
char 【1】;
int i;
printf("请设置门禁卡密码(需8位):");
gets(pwd);
for(【2】;i<8;i++)
pwd[i]=【3】+3;
printf("该门禁卡密码加密存储为:");
puts(【4】);
}
答案:(满分20分)
【1】pwd[9]
【2】i=0
【3】pwd[i]
【4】pwd
第 三 题 程序改错题
本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。
程序功能:班级评选志愿服务明星,每个小组推选志愿服务天数最多的学生参评。某小组志愿服务天数统计信息存在数组z[6]里,查找并输出数组z中最多的天数。
Program3.c代码(首行数字为行号)如下:
1 #include <stdio.h>
2 void main()
3 {
4 int i,max,z[6]={4,8,10,5,11,7};
5 max=z[0];
6 for(i=1;i<=6;i++)
7 if(z[i]!=max)
8 max=z[i];
9 printf("志愿服务天数最多的是:%f天",max);
10 }
答案:(满分15分)
【1】错误行号:6
正确代码:for(i=1;i<6;i++)
【2】错误行号:7
正确代码:if(z[i]>max)
【3】错误行号:9
正确代码:printf("志愿服务天数最多的是:%d天",max);
第 四 题 程序改错题
本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。
程序功能:三次机会猜数字游戏。输入数字与给定数字7相等,猜对退出;猜错3次程序结束。
Program4.c代码(首行数字为行号)如下:
1 #include <stdio.h>
2 #define NUM 7
3 void main()
4 {
5 int i=1,guess;
6 while(i<=3)
7 {
8 printf("第%d次猜数字:",i);
9 scanf("%d",&guess);
10 if(guess=NUM)
11 {
12 printf("猜对了,你真牛!");
13 continue;
14 }
15 else
16 printf("真可惜,猜错了!
");
17 i--;
18 }
19 }
答案:(满分15分)
【1】错误行号:10
正确代码:if(guess==NUM)
【2】错误行号:13
正确代码:break;
【3】错误行号:17
正确代码:i++;
第 五 题 编程题
请考生将编写的程序代码填写到考试系统中对应的答题区域。
程序功能:计算1+1/2+1/3+1/4+……+1/n的和。
要求:定义func(int x)函数,返回1/x的值。main主函数输入正整数n,调用func()函数,计算并输出前n项的和,保留两位小数输出。
答案:(满分30分)
程序代码:
#include <stdio.h>
float func(int x) {
return 1.0 / x; // 使用1.0确保浮点数除法
}
void main() {
int n, i;
float sum = 0.0; // 用于存储总和,初始化为0
printf("请输入正整数n:");
scanf("%d", &n);
// 累加1+1/2+1/3+...+1/n
for (i = 1; i <= n; i++) {
sum += func(i);
}
printf("前%d项的和为:%.2f
", n, sum);
}
5.综合素质(15分)
(1)考生全程无不当操作(如随意插拔设备、误触系统设置等)且能正确使用考试系统功能(如提交答案、标记题目等);5分
(2)按题目要求正确保存相关素材,规范答题;5分
(3)考生全程无任何违规行为(如交头接耳、携带违禁物品、偷看他人答案等);5分
【根据考生实际答题情况,即使无任何作答,只要参加考试并登录考试系统即有30分,因此大胆猜测软件专业技能考试数据库和C语言各有15分综合素质分,仅提供参考。阅卷时需按照卷面满分各科100分进行阅卷,阅卷结束后,根据需要自行补充30分综合素质分】
学科网(北京)股份有限公司原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$