题目描述
小蓝给学生们组织了一场考试,卷面总分为100分,每个学生的得分都是一个0到100的整数。如果得分至少是60分,则称为及格。如果得分至少为85分,则称为优秀。请计算及格率和优秀率,用百分数表示,百分号前的部分四舍五入保留整数。
【输入格式】 输入的第一行包含一个整数n,表示考试人数。接下来n行,每行包含一个0至100的整数,表示一个学生的得分。
【输出格式】 输出两行,每行一个百分数,分别表示及格率和优秀率。百分号前的部分四舍五入保留整数。
【样例输入】
7
80
92
56
74
88
100
0
【样例输出】
71%
43%
分析:这道题可以直接根据题目描述进行代码 可以不用数组储存,每次都对 cj 进行重新赋值然后判断是否 及格 或者 优秀。开始时对及格和优秀个数初始化(=0) 最后输出时 要进行强制转化
#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
int yx=0;
int jg=0; //初始化赋值
int cj;
int i;
for(i=0;i<n;i++)
{
scanf("%d",&cj);
if(cj>=60)
jg++;
if(cj>=80)
yx++;
}
printf("%.f%\n",(jg*100/(float)n));
printf("%.f%\n",(yx*100/(float)n)); //输出进行强制转化
return 0;
}