当前位置:文档之家› 2015上海计算机等级考试二级C(B卷)

2015上海计算机等级考试二级C(B卷)

{struct Frac c;
c.Mol=a.Mol*b.Den+a.Den*b.Mol;
c.Den=a.Den+b.Den;
return c;
}
int main(void)
{struct Frac n,m,t;printf("请输入第一个分数:");
scanf("%d/%d",&n.Mol,&n.Den); printf("请输入第二个分数:");
{struct Frac n,m,t;printf("请输入第一个分数:
scanf("%d/%d",&n.Mol,&n.Den); printf("请输入第二个分数:
scanf("%d/%d",&m.Mol,&m.Den); t= add(n,m);/*******/printf("%d/%d+%d/%d=%d/%d\n",n.Mol,n.Den,m.Mol,m.Den,t.Mol,t.Den); return0;
int Den;};struct Frac add(struct Frac a,struct Frac b)/*******/ {struct Frac c;
c.Mol=a.Mol*b.Den+a.Den*b.Mol; c.Den=a.Den*b.Den;
return c;
}int main(void)
括B_2_2.c文件和B_2_2.EXE文件)保存到目录 功能说明: 自 定义一个表示分数的结构体类型, 算两个分数的和,最后在主函数中输出计算的结果 运行示例: 含错误源程序:#include<stdio.h> struct Frac{int Mol;
int Den;
};
struct add(struct Frac a,struct Frac b)
运行示例:
输入:
输出:
说明: 含错误源程序:
#include <stdio.h>
int main(void)
{
float salary,tax;
printf("请输入月收入: ");
scanf("%d", &salary);
if (salary<=3500) tax=0
else if (salary<=5000) tax=(salary-3500)*0.03;
return0;
}
三、操作题
(一)程序调试题(
1. 程序调试题1
调试要求: 下列程序
序(在所修改语句后加
括B_2_1.c文件和B_2_1.EXE文件)保存到目录中。
功能说明: 输入某人某一个月的月收入(在2500元到8000元之间) ,计算并输出该月份他应
缴的个人所得税。 个人所得税采用分段计算方法计算, 具体为:月收入不超过3500元(含3500元,以下同)免税;月收入超过3500元但不超过5000元的,超过部分的税率为3%;月收入超 过5000元但不超过8000元的,超过5000元部分的税率为10%。
printf("输入字符:");scanf("%c",&ch);
while((1)
{
if((2)
count++;
i++;
}
return count;
}
int main(void)
{
char str[80];
int n;
printf("输入字符串:");gets((3));
n=(4);
printf("输出结果:%d\n",n);
2015
、单项选择题(答案在最后) 二、填空题(答案在最后)
程序功能:输入一个正整数, 将其各位上为偶数的数字去除, 剩余的数按原来从 高位到低位的顺序组成一个新的数, 并将其输出到文件out1.txt中。例如,输入:9,输出到文件:135779。
代码:#include <stdio.h> int main(void){
}
3.程序调试题3调试要求: 下列程序(C:\KS\B_2_3.c)包含4个错误,请按题中的功能要求,调试并修改该程 序(在所修改语句后加/*******/字样的注释),使其运行能得到正确的结果。将程序结果(包 括B_2_3.c文件和B_2_3.EXE文件)保存到目录中。
功能说明:输入两个由整型数构成的集合(元素个数均为5)分别放到数组A和B中,求这两
else tax=1500*0.03+(salary-3500)*0.1;
printf("个人所得税为:%.2f\n", tax);
returБайду номын сангаас0;
}参考答案:#include <stdio.h> int main(void)
float salary,tax;
printf("请输入月收入: ");
else if (salary<=5000) tax=(salary-3500)*0.03;
scanf("%d/%d",&m.Mol,&m.Den); t= struct add(n,m); printf("%d/%d+%d/%d=%d/%d\n",n.Mol,n.Den,m.Mol,m.Den,t.Mol,t.Den); return0;
}参考答案:#include<stdio.h> struct Frac{int Mol;
(4); /*
return0;
}程序功能:从键盘输入一个字符串和一个字符, 统计字符串中该字符出现的次数, 并输出结果。例如,输入字符串:aBEddfghDdd输入字符:d,输出结果:4。 代码:
#include <stdio.h> int num(char str[]){
char ch;
int i=0,count=0;
long n;
int k,i=1;
int(1);
FILE *fp; fp=fopen("out1.txt","w"); scanf("%ld",&n);
while((2)___
{
k=(3)
n=n/10;
if (k%2== 1)
{
z=z+k*i;
i=10*i;
}
}fprintf(fp,"%d\n",z);
else tax=1500*0.03+(salary-5000)*0.1;
printf("个人所得税为:%.2f\n", tax);
return0;
2.程序调试题2
调试要求: 下列程序(C:\KS\B_2_2.c)包含3个错误,请按题中的功能要求,调试并修改该程 序(在所修改语句后加/*******/字样的注释),使其运行能得到正确的结果。将程序结果(包
相关主题