本题要求编写程序,计算学生们的平均成绩,并统计及格(成绩不低于60分)的人数。题目保证输入与输出均在整型范围内。\n\n输入格式:\n输入在第一行中给出非负整数n,即学生人数。第二行给出n个非负整数,即这n
时间: 2023-05-31 16:18:01 浏览: 1162
### 回答1:
编写程序需要按照题目要求进行输入输出操作,计算学生平均成绩和及格人数。需要注意的是,输入和输出都是整型数据。
示例代码如下:
```python
# 输入学生人数n
n = int(input())
# 输入n个学生成绩
scores = list(map(int, input().split()))
# 定义变量保存总分和及格人数
total_score = 0
pass_count = 0
# 遍历每个学生成绩
for score in scores:
total_score += score
if score >= 60:
pass_count += 1
# 计算平均分
average_score = total_score / n
print(f'{average_score:.2f} {pass_count}')
```
### 回答2:
道学生的成绩,数之间用空格分隔。\n\n输出格式:\n在一行中输出平均成绩。小数点后保留两位。在第二行中输出及格人数。\n\n示例输入:\n5\n90 85 76 61 59\n\n示例输出:\n74.20\n3\n\n本题要求计算学生们的平均成绩和及格人数,其核心思路是对输入的成绩进行求和,并计算及格人数。在嵌套循环中,使用累加器可以将各个数值相加,得到总成绩。在计算及格人数时,使用一个计数器,遍历所有成绩,当某个数值不低于60分时,将计数器加1。最后,将总成绩除以学生人数,得到平均成绩,再输出及格人数即可。下面是具体步骤:\n\n1. 读入学生人数n和n个成绩:\n在读入数据时,可以使用for循环遍历n个数值,将数据依次存储在一个列表中,方便进行统计计算。\n\n2. 求和计算平均成绩:\n使用一个累加器,对所有成绩进行求和,得到总成绩。将总成绩除以学生人数,保留两位小数,即为平均成绩。\n\n3. 计算及格人数:\n使用一个计数器,遍历所有成绩,当某个数值不低于60分时,将计数器加1。输出计数器的值即可。\n\n下面是代码实现:\n```python\nn = int(input())\ngrades = list(map(int, input().split()))\n\n# 计算平均成绩\ntotal = sum(grades)\navg = total / n\nprint('%.2f' % avg)\n\n# 计算及格人数\ncount = 0\nfor grade in grades:\n if grade >= 60:\n count += 1\nprint(count)\n```
### 回答3:
个学生的成绩。
输出格式:
在一行中输出平均成绩,保留2位小数,并在一行中输出及格人数。
解题思路:
本题输入格式比较简单,直接按题目要求输入。对于计算平均成绩,可以通过对所有成绩进行求和,再除以学生人数得到平均成绩。对于统计及格人数,可以使用一个计数器,遍历所有成绩,若成绩大于等于60分,则计数器加1。最后统计完毕后,直接将平均成绩和及格人数输出即可。
实现代码如下:
#include <stdio.h>
int main()
{
int n, score, sum = 0, pass_num = 0; //sum表示成绩总和,pass_num表示及格人数
double avg_score; //平均成绩需为浮点型
scanf("%d", &n);
for(int i=0; i<n; i++)
{
scanf("%d", &score);
sum += score; //计算总成绩
if(score >= 60) pass_num++; //计算及格人数
}
avg_score = (double)sum / n; //计算平均成绩
printf("%.2lf %d", avg_score, pass_num); //输出结果
return 0;
}
按照上面的实现方法,便可以得到正确的结果。但还可以进一步优化代码,对于输出结果保留2位小数,可以使用printf函数中的格式控制字符串"%.2lf",表示输出一个双精度浮点型数据,并保留2位小数。同时在最后一个输出项后面加上换行符"\n",即可输出到新的一行。新的代码如下:
#include <stdio.h>
int main()
{
int n, score, sum = 0, pass_num = 0;
double avg_score;
scanf("%d", &n);
for(int i=0; i<n; i++)
{
scanf("%d", &score);
sum += score;
if(score >= 60) pass_num++;
}
avg_score = (double)sum / n;
printf("%.2lf\n%d", avg_score, pass_num); //增加换行符和格式控制字符串
return 0;
}
这样代码更加简洁明了,并且满足题目要求。
相关推荐
![text/x-c](https://img-home.csdnimg.cn/images/20210720083646.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![md](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![java](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)