题目原文
题目描述
输入一串成绩(正整数),输出GPA统计结果。
输入
若干个整数
输出
由高到低输出统计结果。
样例
输入样例1
40 50 60 -1 60 100
输出样例1
A+: 1
D: 2
F: 2
提示
需要过滤掉不合法输入:成绩不在0~100区间内的。
AC代码
#include <stdio.h>
char GPA[10][5] = {{"A+"}, {"A"}, {"B+"}, {"B"}, {"C+"}, {"C"}, {"D"}, {"F"}};
int GPA_cnt[10] = {0};
int main()
{
int score;
while (~scanf("%d", &score))
{
if (score < 0 || score > 100)
continue;
if (score >= 93)
GPA_cnt[0]++;
else if (score >= 85)
GPA_cnt[1]++;
else if (score >= 80)
GPA_cnt[2]++;
else if (score >= 75)
GPA_cnt[3]++;
else if (score >= 70)
GPA_cnt[4]++;
else if (score >= 65)
GPA_cnt[5]++;
else if (score >= 60)
GPA_cnt[6]++;
else
GPA_cnt[7]++;
}
for (int i = 0; i < 8; i++)
if (GPA_cnt[i])
printf("%s: %d\n", GPA[i], GPA_cnt[i]);
return 0;
}