期末考试成绩

期末考试结束了,老师想要根据学生们的成绩划分出等级。共有5个等级A,B,C,D和E。

划分方法如下,90分(含90)以上的为A,8090(含80)间的为B,7080(含70)间的为C,

60~70(含60)的为D,不及格的为E。

根据输入的成绩,编程输出各个级别段人数。

Input
输入第一行包含一个正整数N(N<= 100)代表学生的数目,接下来有N行数据每行一个整数(0~100)代表

一个学生的成绩。
Output
输出有五行格式如下:

A nA

B nB

C nC

D nD

E nE

其中A,B,C,D,E代表等级,nA,nB等代表个等级的人数,等级和人数之间有一个空格。

利用for循环与if;

#include<stdio.h>
int main()
{
int n, a[100], i, k, j=0, b=0, c=0, d=0, e=0;
char a1=‘A’, b1=‘B’, c1=‘C’, d1=‘D’, e1=‘E’;
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
if(a[i]>=90&&a[i]<=100)
j=j+1;
if(a[i]<90&&a[i]>=80)
b=b+1;
if(a[i]<80&&a[i]>=70)
c=c+1;
if(a[i]<70&&a[i]>=60)
d=d+1;
if(a[i]<60)
e=e+1;
}
printf("%c %d\n%c %d\n%c %d\n%c %d\n%c %d\n", a1, j, b1, b, c1, c, d1, d, e1, e);
return 0;
}

利用for循环与switch语句

#include<stdio.h>
int main()
{
int n,a[100], j=0, b=0, c=0, d=0, e=0, i;
scanf("%d", &n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]) ;
switch(a[i]/10)
{
case 10:
case 9:j++;break;
case 8:b++;break;
case 7:c++;break;
case 6:d++;break;
default:e++;
}
}
printf(“A %d\nB %d\nC %d\nD %d\nE %d”, j, b, c, d, e);
return 0;
}

发布了23 篇原创文章 · 获赞 0 · 访问量 289

猜你喜欢

转载自blog.csdn.net/waiting121384/article/details/104314095