题目7-1 统计学生成绩
1.实验代码
#include
int main(void){
int N,i,A=0,B=0,C=0,D=0,E=0,f;
scanf("%d",&N);
for(i=1;i<=N;i++){
scanf("%d",&f);
if(f>=90){
A=A+1;
}
else if(f>=80&&f<90){
B=B+1;
}
else if(f>=70&&f<80){
C=C+1;
}
else if(f>=60&&f<70){
D=D+1;
}
else{
E=E+1;
}
}
printf("%d %d %d %d %d",A,B,C,D,E);
return 0;
}
2.设计思路
(1)文字描述
第一步:定义N,i,A=0,B=0,C=0,D=0,E=0,f。
第二步:输入N代表for循环循环几次。
第三步:使用for循环,for(i=1;i<=N;i++)。
第四步:每次循环scanf一个数字,并用else if语句判断ABDE哪个档次。
第五步:输出ABCDE的值。
(2)流程图
3.本题调试过程碰到问题及解决办法
没有问题。
7-2 计算油费 (15 分)
1.实验代码
#include
int main(void){int a,b;char c;doublesum,e,f;
scanf("%d %d %c",&a,&b,&c);if(b==90)
e=6.95;else if(b==93)
e=7.44;elsee=7.93;switch(c)
{case 'm' : f=0.95; break;case 'e' : f=0.97; break;
}
sum=a*e*f;
printf("%.2f",sum);return 0;
}
2.设计思路
(1)文字描述:
第一步:定义整数a,b。定义字符c。定义双精度数字sum,e,f。
第二步:输入两个整数与一个字符分别存于a,b,c。
第三步:用else if判断b的值,使e等于对应几号油的价钱。
第四部:用switch判断字符c所对应的服务的价钱存于f。
第五步:sum=a*e*f,并输出sum。
(2)流程图
3.本题调试过程碰到问题及解决办法
上图习惯性的把case后的:打成;
这个一直很困惑,以为是电脑的问题,后来看到之前打的代码发现是scanf("%d %d %c",a,b,c);中少打了&号。
二、总结和学习进度条
1.这几周学习自定义函数,do while,switch,for语句等。
遇到问题:我会忘记%d,%c,%f的区别;语句运用上格式模糊,要经常去看书本,于是通过反复地翻书来加深印象。
3.