内容正文:
山东省春季高考技能测试
C语言程序设计第四十套(答案版)
第 一 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:输入一个字符串,将其中"$"字符都删除后,再按照原来的输入顺序输出。
Program1.c代码如下:
#include <stdio.h>
void main()
{
【1】 ch;
printf("请输入字符串:");
ch=getchar();
【2】(ch!='
')
{
if (【3】)
putchar(【4】 );
ch=getchar();
}
}
答案:(满分20分)
【1】char
【2】while
【3】ch != '$'
【4】ch
第 二 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:厚度是1毫米的纸,求至少要对折多少次,纸的厚度等于或超过1米。
Program2.c代码如下:
#include<stdio.h>
void main()
{
int year,n=0;
float s【1】;
while(1)
{
printf("请输入年龄:");
scanf("%d",【2】);
if(year【3】)
break;
s=s+year;
【4】;
}
printf("平均年龄为:%.2f",s/n);
}
答案:(满分20分)
【1】= 0.0
【2】&year
【3】< 0
【4】n++
第 三 题 程序改错题
本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。
程序功能:键盘输入一个英文字符,如果输入的字符是大写字母A、B,输出"Good!",输入的字符是大写字母C,输出"Bad!",其它字符输出"Error!"。
Program3.c代码(首行数字为行号)如下:
1 #include <stdio.h>
2 void main()
3 {
4 char ch;
5 printf("请输入字符:");
6 ch=gets();
7 switch(ch)
8 {
9 case'A', case'B':
10 printf("Good!
");
11 break;
12 case'C':
13 printf("Bad!
");
14 break;
15 else:
16 printf("Error!");
17 }
18 }
答案:(满分15分)
【1】错误行号:6
正确代码:ch = getchar ();
【2】错误行号:9
正确代码:case 'A': case 'B':
【3】错误行号:15
正确代码:default:
第 四 题 程序改错题
本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。
程序功能: F数列如下: 1,1,2,3,5,8,13,21,34,…该数列除前两项外,其它任意一项都是其相邻的前两项之和。计算F数列的前20项,并以每行5个数的形式显示输出。
Program4.c代码(首行数字为行号)如下:
1 #include <stdio.h>
2 void main()
3 {
4 int i,f[20]=(1,1);
5 for(i=3;i<20;i++)
6 f[i]=f[i-1]+f[i-2];
7 for(i=0;i<20;i++)
8 {
9 printf("%10d",f[i]);
10 if((i+1)%5=0)
11 printf("
");
12 }
13 }
答案:(满分15分)
【1】错误行号:4
正确代码:int i,f [20]={1,1};
【2】错误行号:5
正确代码:for (i=2;i<20;i++)
【3】错误行号:10
正确代码:if ((i+1)%5==0)
第 五 题 编程题
请考生将编写的程序代码填写到考试系统中对应的答题区域。
程序功能:定义p(int n)函数,返回n是否能被23整数的结果。在main()函数中输入任意一个整数x,调用p()函数,根据返回值,如果x能被23整除,输出“yes”,不能被23整除,输出“no”。
答案:(满分30分)
程序代码:
#include <stdio.h>
int p(int n) {
return (n % 23 == 0) ? 1 : 0;
}
int main() {
int x;
printf("请输入一个整数:");
scanf("%d", &x);
if (p(x)) {
printf("yes
");
} else {
printf("no
");
}
return 0;
}
5.综合素质(15分)
(1)考生全程无不当操作(如随意插拔设备、误触系统设置等)且能正确使用考试系统功能(如提交答案、标记题目等);5分
(2)按题目要求正确保存相关素材,规范答题;5分
(3)考生全程无任何违规行为(如交头接耳、携带违禁物品、偷看他人答案等);5分
【根据考生实际答题情况,即使无任何作答,只要参加考试并登录考试系统即有30分,因此大胆猜测软件专业技能考试数据库和C语言各有15分综合素质分,仅提供参考。阅卷时需按照卷面满分各科100分进行阅卷,阅卷结束后,根据需要自行补充30分综合素质分】
学科网(北京)股份有限公司原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
山东省春季高考技能测试
C语言程序设计第四十套(原卷版)
第 一 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:输入一个字符串,将其中"$"字符都删除后,再按照原来的输入顺序输出。
Program1.c代码如下:
#include <stdio.h>
void main()
{
【1】 ch;
printf("请输入字符串:");
ch=getchar();
【2】(ch!='
')
{
if (【3】)
putchar(【4】 );
ch=getchar();
}
}
答案:
【1】
【2】
【3】
【4】
第 二 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:厚度是1毫米的纸,求至少要对折多少次,纸的厚度等于或超过1米。
Program2.c代码如下:
#include<stdio.h>
void main()
{
int year,n=0;
float s【1】;
while(1)
{
printf("请输入年龄:");
scanf("%d",【2】);
if(year【3】)
break;
s=s+year;
【4】;
}
printf("平均年龄为:%.2f",s/n);
}
答案:
【1】
【2】
【3】
【4】
第 三 题 程序改错题
本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。
程序功能:键盘输入一个英文字符,如果输入的字符是大写字母A、B,输出"Good!",输入的字符是大写字母C,输出"Bad!",其它字符输出"Error!"。
Program3.c代码(首行数字为行号)如下:
1 #include <stdio.h>
2 void main()
3 {
4 char ch;
5 printf("请输入字符:");
6 ch=gets();
7 switch(ch)
8 {
9 case'A', case'B':
10 printf("Good!
");
11 break;
12 case'C':
13 printf("Bad!
");
14 break;
15 else:
16 printf("Error!");
17 }
18 }
答案:
【1】错误行号:
正确代码:
【2】错误行号:
正确代码:
【3】错误行号:
正确代码:
第 四 题 程序改错题
本题有3行代码错误,请考生找到错误代码行,将错误代码行号、修改后的该行程序代码填写到考试系统中对应的答题区域。
程序功能: F数列如下: 1,1,2,3,5,8,13,21,34,…该数列除前两项外,其它任意一项都是其相邻的前两项之和。计算F数列的前20项,并以每行5个数的形式显示输出。
Program4.c代码(首行数字为行号)如下:
1 #include <stdio.h>
2 void main()
3 {
4 int i,f[20]=(1,1);
5 for(i=3;i<20;i++)
6 f[i]=f[i-1]+f[i-2];
7 for(i=0;i<20;i++)
8 {
9 printf("%10d",f[i]);
10 if((i+1)%5=0)
11 printf("
");
12 }
13 }
答案:
【1】错误行号:
正确代码:
【2】错误行号:
正确代码:
【3】错误行号:
正确代码:
第 五 题 编程题
请考生将编写的程序代码填写到考试系统中对应的答题区域。
程序功能:定义p(int n)函数,返回n是否能被23整数的结果。在main()函数中输入任意一个整数x,调用p()函数,根据返回值,如果x能被23整除,输出“yes”,不能被23整除,输出“no”。
答案:
程序代码:
学科网(北京)股份有限公司
学科网(北京)股份有限公司原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
/*程序功能:厚度是1毫米的纸,求至少要对折多少次,纸的厚度等于或超过1米。
program2.c代码如下:*/
#include<stdio.h>
void main()
{
int n【1】;
float h=1;
while(h【2】)
{
h=h*2;
【3】;
}
printf("%d
",【4】);
}
#include <stdio.h>
void main()
{
char ch;
printf("Кв╩С╚вОоичБ║");
ch=gets();
switch(ch)
{
case'A', case'B':
printf("Good!
");
break;
case'C':
printf("Bad!
");
break;
else:
printf("Error!");
}
}
#include <stdio.h>
void main()
{
int i,f[20]=(1,1);
for(i=3;i<20;i++)
f[i]=f[i-1]+f[i-2];
for(i=0;i<20;i++)
{
printf("%10d",f[i]);
if((i+1)%5=0)
printf("
");
}
}
/*程序功能:输入一个字符串,将其中"$"字符都删除后,再按照原来的输入顺序输出。
program1.c代码如下:*/
#include <stdio.h>
void main()
{
【1】 ch;
printf("请输入字符串:");
ch=getchar();
【2】(ch!='
')
{
if (【3】)
putchar(【4】 );
ch=getchar();
}
}
$