PTA 7-79 统计指定数量学生的平均成绩与不及格人数

PTA 7-79 统计指定数量学生的平均成绩与不及格人数
分数 15
作者 颜晖
单位 浙大城市学院
本题要求编写程序,计算学生们的平均成绩,并统计不及格(成绩低于60分)的人数。题目保证输入与输出均在双精度范围内。

输入格式:
输入在第一行中给出非负整数n,即学生人数。第二行给出n个非负实数,即这n位学生的成绩,其间以空格分隔。

输出格式:
average = 成绩均值

count = 不及格人数

其中平均值精确到小数点后两位,等号的左右各有一个空格。

输入样例1:
4
60 54 95 73
输出样例1:
average = 70.50
count = 1
输入样例2:
0
输出样例2:
average = 0.00
count = 0
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB

#include <stdio.h>
int main(void){
    double grade, average, sum = 0;
    int student, count = 0;//count表示记录不及格人数
    scanf("%d", &student);
    int arr[student];    //定义数组存入学生成绩
    if(student == 0){    //如果输入学生人数为0时
        printf("average = 0.00\n");
        printf("count = 0");
    }else{    //输入学生人数不为0时
        for(int i = 0; i <= student - 1; i++){
            scanf("%lf",&grade);    //输入成绩
            arr[i] = grade;    //存入成绩
            if(arr[i] < 60){//如果成绩不及格,则记录不及格人数
                count += 1;
            }
            sum += arr[i];    //成绩总和
        }
        average = sum / student;    //平均成绩
        printf("average = %.2lf\ncount = %d\n", average, count);
        //输出平均成绩和不及格人数
    }
    return 0;
}

解题思路:
step1:用数组存入学生成绩并记录不及格的人数
step2:将每次成绩加起来求和
step3:求平均成绩

归属知识点:
数组
条件语句
循环语句

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这个问题乍一看很难懂,实际上是在问:如何统计一批学生平均成绩,而且不含有格外的人数(例如缺考、退课)? 答案就是使用“平均数”这个概念,但是要去掉那些无效的数据。如果是计算班级的平均成绩,就将缺考、退课的学生排除在外。如果是计算整个学校的平均成绩,就要将所有班级的无效数据一起去掉。 ### 回答2: 假设有一批学生共有n名,他们的成绩分别为s1, s2, ..., sn。我们可以通过求和s1+s2+...+sn,再除以n,得出这批学生平均成绩。具体公式为: 平均成绩 = (s1+s2+...+sn) / n 如果要求这批学生不及格人数,我们需要先确定什么标准算是不及格。一般来说,考试成绩低于60分就算是不及格。所以我们可以遍历每一个学生成绩统计出低于60分的人数,具体算法步骤如下: 1. 初始化不及格人数变量fail为0 2. 遍历每一个学生成绩,如果小于60分,就让fail变量加1 3. 最后fail就是这批学生中的不及格人数 具体的伪代码如下: fail = 0 for i in range(n): if score[i] < 60: fail += 1 综合起来,我们可以写出如下的Python代码来求解这个问题: # 输入一批学生成绩 scores = input().split() # 将成绩转换为数字类型 scores = [float(s) for s in scores] # 计算平均成绩 avg_score = sum(scores) / len(scores) # 统计不及格人数 fail = 0 for score in scores: if score < 60: fail += 1 # 输出结果 print('平均成绩:{:.2f}, 不及格人数:{}'.format(avg_score, fail)) 当然,这只是一个简单的示例代码,实际应用中可能需要考虑更多的特殊情况,例如输入数据的格式错误、数据量过大等。但是这个代码可以作为一个基础模板来进行扩展和优化。 ### 回答3: 如何计算一批学生平均成绩不及格人数? 在统计学中,平均数和频数是最基本的概念。平均数是指一组数的总和除以这组数的个数,即平均值=总和÷个数。而频数则是指在一组数据中出现某个数值的次数。因此,我们可以通过以下方法来计算一批学生平均成绩不及格人数: 1. 首先,确定一批学生成绩数据。可以是一组整数、小数或百分数,也可以是一个数据表格或电子表格。 2. 计算这批学生平均成绩。将所有学生成绩加起来,然后除以学生数量,就可以得到平均成绩。 例如,假设班里有30名学生,他们的成绩分别是:70、80、90、60、50、75、85、95、65、55、80、75、90、85、70、60、80、75、85、90、95、60、70、80、85、90、75、65、50、60。则这批学生平均成绩为: (70+80+90+60+50+75+85+95+65+55+80+75+90+85+70+60+80+75+85+90+95+60+70+80+85+90+75+65+50+60) ÷ 30 = 76.5 因此,这批学生平均成绩为76.5。 3. 计算不及格人数不及格通常是指成绩低于60分的学生。因此,我们只需统计这批学生中有多少人的成绩低于60分即可。 例如,这批学生成绩低于60分的有10人,则不及格人数为10人。 以上就是计算一批学生平均成绩不及格人数的基本方法。当然,在实际统计过程中还有很多细节需要注意,例如对数据进行清洗、去除异常值、使用不同的平均数计算方法等等,这些都需要根据具体情况来选择使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值