内容正文:
山东省春季高考技能测试
C语言程序设计第三十四套(原卷版)
第 一 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:模拟超市结账。输入整数0表示结束商品价格输入,计算应付款,保留2位小数。
Program1.c代码如下:
#include<stdio.h>
void main()
{
int flag;
double price,total=【1】;
do
{
printf("请输入商品价格:");
scanf("【2】",&price);
total+=【3】;
printf("是否要结算?(输入0表示结束输入)");
scanf("%d",&flag);
}while(flag!=0);
printf("应付款=【4】",total);
}
答案:
【1】
【2】
【3】
【4】
第 二 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:实现两个整数的除法运算。
Program2.c代码如下:
#include <stdio.h>
void fun(int op1, int op2)
{
if (【1】)
printf("分母不能为0!");
else
printf("相除结果为:%f
", 【2】op1 / op2);
}
void main()
{
int op1, op2;
char ch;
printf("请输入运算表达式:
");
scanf("%d%c%d", &op1, &ch, &op2);
if(ch==【3】)
fun(【4】);
else
printf("无法运算");
}
答案:
【1】
【2】
【3】
【4】
第 三 题 程序改错题
本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。
程序功能:定义fun(int n)函数,判断该正整数n能不能同时被2、3整除,能整除则返回1,不能整除则返回0。
Program3.c代码(首行数字为行号)如下:
1 #include<stdio.h>
2 void fun(int n)
3 {
4 if(n%2==0||n%3==0)
5 return 1;
6 else
7 return 0;
8 }
9 void main()
10 {
11 int n;
12 printf("请输入一个正整数:
");
13 scanf("%d", &n);
14 if(fun(int n))
15 printf("能整除
");
16 else
17 printf("不能整除
");
18 }
答案:
【1】错误行号:
正确代码:
【2】错误行号:
正确代码:
【3】错误行号:
正确代码:
第 四 题 程序改错题
本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。
程序功能:统计字符串中出现字母'E'或'e'的个数。例如,输入:"Hello world",则输出:1。
Program4.c代码(首行数字为行号)如下:
1 #include<stdio.h>
2 #include<string.h>
3 void main()
4 {
5 char str[80];
6 int i,count;
7 printf("请输入一行字符,以回车结束
");
8 gets(str);
9 for(i=0;i<strlen(str);i++)
10 {
11 if(str[i]=='e'&&str[i]=='E')
12 count++;
13 }
14 printf("%d",++count);
15 }
答案:
【1】错误行号:
正确代码:
【2】错误行号:
正确代码:
【3】错误行号:
正确代码:
第 五 题 编程题
请考生将编写的程序代码填写到考试系统中对应的答题区域。
程序功能:实现数组元素a[5]={‘a’,’c’,’e’,’f’,’g’}首尾倒置。即将数组a[5]元素变为{‘g’,’f’,’e’,’c’,’a’}并输出。
答案:
程序代码:
学科网(北京)股份有限公司
学科网(北京)股份有限公司原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
/*程序功能:实现两个整数的除法运算。
program2.c代码如下: */
#include <stdio.h>
void fun(int op1, int op2)
{
if (【1】)
printf("分母不能为0!");
else
printf("相除结果为:%f
", 【2】op1 / op2);
}
void main()
{
int op1, op2;
char ch;
printf("请输入运算表达式:
");
scanf("%d%c%d", &op1, &ch, &op2);
if(ch==【3】)
fun(【4】);
else
printf("无法运算");
}
#include<stdio.h>
void fun(int n)
{
if(n%2==0||n%3==0)
return 1;
else
return 0;
}
void main()
{
int n;
printf("请输入一个正整数:
");
scanf("%d", &n);
if(fun(int n))
printf("能整除
");
else
printf("不能整除
");
}
#include<stdio.h>
#include<string.h>
void main()
{
char str[80];
int i,count;
printf("请输入一行字符,以回车结束
");
gets(str);
for(i=0;i<strlen(str);i++)
{
if(str[i]=='e'&&str[i]=='E')
count++;
}
printf("%d",++count);
}
/*程序功能:模拟超市结账。输入整数0表示结束商品价格输入,计算应付款,保留2位小数。
program1.c代码如下:*/
#include<stdio.h>
void main()
{
int flag;
double price,total=【1】;
do
{
printf("请输入商品价格:");
scanf("【2】",&price);
total+=【3】;
printf("是否要结算?(输入0表示结束输入)");
scanf("%d",&flag);
}while(flag!=0);
printf("应付款=【4】",total);
}
$
山东省春季高考技能测试
C语言程序设计第三十四套(答案版)
第 一 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:模拟超市结账。输入整数0表示结束商品价格输入,计算应付款,保留2位小数。
Program1.c代码如下:
#include<stdio.h>
void main()
{
int flag;
double price,total=【1】;
do
{
printf("请输入商品价格:");
scanf("【2】",&price);
total+=【3】;
printf("是否要结算?(输入0表示结束输入)");
scanf("%d",&flag);
}while(flag!=0);
printf("应付款=【4】",total);
}
答案:(满分20分)
【1】0
【2】%lf
【3】price
【4】%.2f
第 二 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:实现两个整数的除法运算。
Program2.c代码如下:
#include <stdio.h>
void fun(int op1, int op2)
{
if (【1】)
printf("分母不能为0!");
else
printf("相除结果为:%f
", 【2】op1 / op2);
}
void main()
{
int op1, op2;
char ch;
printf("请输入运算表达式:
");
scanf("%d%c%d", &op1, &ch, &op2);
if(ch==【3】)
fun(【4】);
else
printf("无法运算");
}答案:(满分20分)
【1】op2 == 0
【2】(float)
【3】'/'
【4】op1, op2
第 三 题 程序改错题
本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。
程序功能:定义fun(int n)函数,判断该正整数n能不能同时被2、3整除,能整除则返回1,不能整除则返回0。
Program3.c代码(首行数字为行号)如下:
1 #include<stdio.h>
2 void fun(int n)
3 {
4 if(n%2==0||n%3==0)
5 return 1;
6 else
7 return 0;
8 }
9 void main()
10 {
11 int n;
12 printf("请输入一个正整数:
");
13 scanf("%d", &n);
14 if(fun(int n))
15 printf("能整除
");
16 else
17 printf("不能整除
");
18 }
答案:(满分15分)
【1】错误行号:2
正确代码:int fun(int n)
【2】错误行号:4
正确代码:if(n%2==0&&n%3==0)
【3】错误行号:14
正确代码:if(fun(n))
第 四 题 程序改错题
本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。
程序功能:统计字符串中出现字母'E'或'e'的个数。例如,输入:"Hello world",则输出:1。
Program4.c代码(首行数字为行号)如下:
1 #include<stdio.h>
2 #include<string.h>
3 void main()
4 {
5 char str[80];
6 int i,count;
7 printf("请输入一行字符,以回车结束
");
8 gets(str);
9 for(i=0;i<strlen(str);i++)
10 {
11 if(str[i]=='e'&&str[i]=='E')
12 count++;
13 }
14 printf("%d",++count);
15 }
答案:(满分15分)
【1】错误行号:6
正确代码:int i,count=0;
【2】错误行号:11
正确代码:if(str[i]=='e'||str[i]=='E')
【3】错误行号:14
正确代码:printf("%d",count);
第 五 题 编程题
请考生将编写的程序代码填写到考试系统中对应的答题区域。
程序功能:实现数组元素a[5]={‘a’,’c’,’e’,’f’,’g’}首尾倒置。即将数组a[5]元素变为{‘g’,’f’,’e’,’c’,’a’}并输出。
答案:(满分30分)
程序代码:
#include <stdio.h>
int main() {
char a[5] = {'a', 'c', 'e', 'f', 'g'};
int i, temp;
int len = 5; // 数组长度
for (i = 0; i < len / 2; i++) {
// 交换第i个元素和第len-1-i个元素
temp = a[i];
a[i] = a[len - 1 - i];
a[len - 1 - i] = temp;
}
printf("倒置后的数组:");
for (i = 0; i < len; i++) {
printf("%c ", a[i]);
}
printf("
");
return 0;
}
5.综合素质(15分)
(1)考生全程无不当操作(如随意插拔设备、误触系统设置等)且能正确使用考试系统功能(如提交答案、标记题目等);5分
(2)按题目要求正确保存相关素材,规范答题;5分
(3)考生全程无任何违规行为(如交头接耳、携带违禁物品、偷看他人答案等);5分
【根据考生实际答题情况,即使无任何作答,只要参加考试并登录考试系统即有30分,因此大胆猜测软件专业技能考试数据库和C语言各有15分综合素质分,仅提供参考。阅卷时需按照卷面满分各科100分进行阅卷,阅卷结束后,根据需要自行补充30分综合素质分】
学科网(北京)股份有限公司原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$