内容正文:
山东省春季高考技能测试
C语言程序设计第三套(答案版)
第 一 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:输入一段字符串,统计该字符串中字母、数字、空格、其他字符的个数。
Program1.c代码如下:
#include <stdio.h>
int main()
{
char str[1000];
int letter=0,digit=0,space=0,other=0,i=0;
printf("请输入一个字符串:");
gets(str);
while(【1】)
{
if(【2】)
letter++;
else if(【3】)
digit++;
else if(【4】)
space++;
else
other++;
i++;
}
printf("统计结果:
");
printf("字母个数:%d
",letter);
printf("数字个数:%d
",digit);
printf("空格个数:%d
",space);
printf("其他字符个数:%d
",other);
return 0;
}
答案:(满分16分)
【1】str[i]!='\0'
【2】(str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z')
【3】str[i]>='0'&&str[i]<='9'
【4】str[i]==' '
第 二 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:编写一段程序,输入两段字符,判断第二段是否在第一段字符中,存在输出 “找到子串”,否则输出 “未找到子串”。
Program2.c代码如下:
#include <stdio.h>
int main()
{
char mainStr[51],subStr[21];
int i,j,flag=0;
scanf("%s%s",mainStr,subStr);
for(i=0;mainStr[i]!='\0';i++)
{
【1】
if(subStr[j]=='\0')
{
flag=1;
break;
}
}
if(flag) printf("找到子串");
else printf("未找到子串");
return 0;
}
答案:(满分20分)
【1】for(j=0;subStr[j]!='\0'&&mainStr[i+j]!='\0';j++)
if(mainStr[i+j]!=subStr[j]) break;
第 三 题 编程题
程序功能:输入两段字符(长度≤30),比较两段字符是否相等,根据比较结果输出 “相等” 或 “不相等”。
答案:(满分28分)
程序代码:
#include <stdio.h>
int main()
{
char s1[31],s2[31];
int i=0,flag=1;
scanf("%s%s",s1,s2);
while(s1[i]!='\0'&&s2[i]!='\0')
{
if(s1[i]!=s2[i])
{
flag=0;
break;
}
i++;
}
if(s1[i]!='\0'||s2[i]!='\0') flag=0;
if(flag) printf("相等");
else printf("不相等");
return 0;
}
第 四 题 编程题
请考生将编写的程序代码填写到考试系统中对应的答题区域。
程序功能:编写一段程序,要求将输入一段字符串中的数字抽取出来并组成一个新的整数,并输出。把该字符串中剩余部分组成一个新的字符串,并输出。
答案:(满分36分)
#include<stdio.h>
int main()
{
char str[100],res[100];
int num=0,i,j=0;
scanf("%s",str);
for(i=0;str[i]!='\0';i++)
{
if(str[i]>='0'&&str[i]<='9')
{
num=num*10+str[i]-'0';
}
else
{
res[j++]=str[i];
}
}
res[j]='\0';
printf("%d
",num);
printf("%s
",res);
return 0;
}
5.综合素质(15分)
(1)考生全程无不当操作(如随意插拔设备、误触系统设置等)且能正确使用考试系统功能(如提交答案、标记题目等);5分
(2)按题目要求正确保存相关素材,规范答题;5分
(3)考生全程无任何违规行为(如交头接耳、携带违禁物品、偷看他人答案等);5分
【根据考生实际答题情况,即使无任何作答,只要参加考试并登录考试系统即有30分,因此大胆猜测软件专业技能考试数据库和C语言各有15分综合素质分,仅提供参考。阅卷时需按照卷面满分各科100分进行阅卷,阅卷结束后,根据需要自行补充30分综合素质分】
学科网(北京)股份有限公司原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
山东省春季高考技能测试
C语言程序设计第三套(原卷版)
第 一 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:输入一段字符串,统计该字符串中字母、数字、空格、其他字符的个数。
Program1.c代码如下:
#include <stdio.h>
int main()
{
char str[1000];
int letter=0,digit=0,space=0,other=0,i=0;
printf("请输入一个字符串:");
gets(str);
while(【1】)
{
if(【2】)
letter++;
else if(【3】)
digit++;
else if(【4】)
space++;
else
other++;
i++;
}
printf("统计结果:
");
printf("字母个数:%d
",letter);
printf("数字个数:%d
",digit);
printf("空格个数:%d
",space);
printf("其他字符个数:%d
",other);
return 0;
}
答案:(满分16分)
【1】
【2】
【3】
【4】
第 二 题 程序填空题
请考生将【序号】处所缺的单行程序代码填写到考试系统中对应的答题区域,实现程序功能。
程序功能:编写一段程序,输入两段字符,判断第二段是否在第一段字符中,存在输出 “找到子串”,否则输出 “未找到子串”。
Program2.c代码如下:
#include <stdio.h>
int main()
{
char mainStr[51],subStr[21];
int i,j,flag=0;
scanf("%s%s",mainStr,subStr);
for(i=0;mainStr[i]!='\0';i++)
{
【1】
if(subStr[j]=='\0')
{
flag=1;
break;
}
}
if(flag) printf("找到子串");
else printf("未找到子串");
return 0;
}
答案:(满分20分)
【1】
第 三 题 编程题
程序功能:输入两段字符(长度≤30),比较两段字符是否相等,根据比较结果输出 “相等” 或 “不相等”。
答案:(满分28分)
程序代码:
第 四 题 编程题
请考生将编写的程序代码填写到考试系统中对应的答题区域。
程序功能:编写一段程序,要求将输入一段字符串中的数字抽取出来并组成一个新的整数,并输出。把该字符串中剩余部分组成一个新的字符串,并输出。
答案:(满分36分)
学科网(北京)股份有限公司
学科网(北京)股份有限公司原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
#include <stdio.h>
int main()
{
char mainStr[51],subStr[21];
int i,j,flag=0;
scanf("%s%s",mainStr,subStr);
for(i=0;mainStr[i]!='\0';i++)
{
║╬1║©
if(subStr[j]=='\0')
{
flag=1;
break;
}
}
if(flag) printf("ур╣╫вс╢╝");
else printf("н╢ур╣╫вс╢╝");
return 0;
}
#include <stdio.h>
int main()
{
char str[1000];
int letter=0,digit=0,space=0,other=0,i=0;
printf("请输入一个字符串:");
gets(str);
while(【1】)
{
if(【2】)
letter++;
else if(【3】)
digit++;
else if(【4】)
space++;
else
other++;
i++;
}
printf("统计结果:
");
printf("字母个数:%d
",letter);
printf("数字个数:%d
",digit);
printf("空格个数:%d
",space);
printf("其他字符个数:%d
",other);
return 0;
}
$