本题要求编写程序读入n个学生的百分制成绩,统计五分制成绩的分布。百分制成绩到五分制成绩的转换规则: 大于等于90分为a; 小于90且大于等于80为b; 小于80且大于等于70为c; 小于70且大于等于60为d; 小于60为e。 输入格式: 输入在第一行中给出一个正整数n(≤1000),即学生人数;第二行中给出n个学生的百分制成绩,其间以空格分隔。 输出格式: 在一行中输出a、b、c、d、e对应的五分制成绩的人数分布,数字间以空格分隔,行末不得有多余空格。 输入样例:
时间: 2023-05-31 17:18:27 浏览: 96
### 回答1:
题目要求编写程序读入n个学生的百分制成绩,统计五分制成绩的分布。百分制成绩到五分制成绩的转换规则:大于等于90分为a;小于90且大于等于80分为b;小于80且大于等于70分为c;小于70且大于等于60分为d;小于60为e。 输入格式: 输入在第一行中给出一个正整数n(n≤1000),即学生人数;第二行中给出n个学生的百分制成绩,数字间以空格分隔。 输出格式: 在一行中输出a、b、c、d、e对应的五分制成绩的百分数分布,数字间以空格分隔,按升序排列。输入样例: 6
90 85 72 63 45 100 输出样例: 1 1 1 2 1
### 回答2:
解题思路:
首先我们要明确题目所给的条件,根据规则转换成百分制对应的级别。其次,我们需要用到计数器来统计每个级别的人数。最后,我们将计数器输出,就可以得到对应分别的学生人数分布了。
代码实现:
### 回答3:
题目描述
给定n个学生的百分制成绩,统计五分制成绩的分布。百分制成绩到五分制成绩的转换规则:
大于等于90分为A;
小于90且大于等于80为B;
小于80且大于等于70为C;
小于70且大于等于60为D;
小于60为E。
输入格式:
输入在第一行中给出一个正整数n(≤1000),即学生人数;第二行中给出n个学生的百分制成绩,其间以空格分隔。
输出格式:
在一行中输出A、B、C、D、E对应的五分制成绩的人数分布,数字间以空格分隔,行末不得有多余空格。
输入样例:
10
44 66 65 78 69 73 81 90 100 59
输出样例:
1 0 1 3 5
解题思路:
关于本题,最关键的一步就是将百分制成绩(int类型)转换为五分制成绩(char类型),这里需要注意的是,题目中的分数区间是左闭右开的,即90分不算A,同理,其他分数也一样。我们应该根据这个来转换五分制成绩,并统计每种分数的人数。最后输出即可。
代码思路:
首先,用一个map存放五分制成绩和对应人数的键值对。每读入一个成绩(百分制),就判断其属于五分制的哪一档,并将其对应的人数加1。最后,将五分制成绩的人数按顺序输出即可。
AC代码
阅读全文