c语言代码可以运行,但是不计算数据

一个试卷分析系统,需要统计最低分最高分平均分,还有各个分数段的人数占比,但是代码没问题,运行不出来

img

img

img

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int n;
    printf("请输入学生数量:");
    scanf("%d", &n);
    int* scores = (int*)malloc(n * sizeof(int)); // 动态分配数组空间
    if (scores == NULL) // 判断是否分配成功
    {
        printf("内存分配失败!\n");
        return -1;
    }

    // 输入
    printf("请输入%d个学生成绩:\n", n);
    for (int i = 0; i < n; i++)
    {
        scanf("%d", &scores[i]);
    }

    // 计算最高分、最低分和平均分
    int max = scores[0], min = scores[0], sum = 0;
    for (int i = 0; i < n; i++)
    {
        if (scores[i] > max)
        {
            max = scores[i];
        }
        if (scores[i] < min)
        {
            min = scores[i];
        }
        sum += scores[i];
    }
    float average = (float)sum / n;

    // 统计各个分数段占比人数
    int a = 0, b = 0, c = 0, d = 0, e = 0; // 分别为90~100, 80~89, 70~79, 60~69, 0~59
    for (int i = 0; i < n; i++)
    {
        if (scores[i] >= 90 && scores[i] <= 100)
        {
            a++;
        }
        else if (scores[i] >= 80 && scores[i] <= 89)
        {
            b++;
        }
        else if (scores[i] >= 70 && scores[i] <= 79)
        {
            c++;
        }
        else if (scores[i] >= 60 && scores[i] <= 69)
        {
            d++;
        }
        else
        {
            e++;
        }
    }
    float ratio_a = (float)a / n; // 计算比例
    float ratio_b = (float)b / n;
    float ratio_c = (float)c / n;
    float ratio_d = (float)d / n;
    float ratio_e = (float)e / n;

    // 输出结果
    printf("最高分:%d", max);
    printf("最低分:%d", min);
    printf("平均分:%.2f", average);
    printf("90~100分段人数占比:%.2f%%\n", ratio_a * 100);
    printf("80~89分段人数占比:%.2f%%\n", ratio_b * 100);
    printf("70~79分段人数占比:%.2f%%\n", ratio_c * 100);
    printf("60~69分段人数占比:%.2f%%\n", ratio_d * 100);
    printf("0~59分段人数占比:%.2f%%\n", ratio_e * 100);

    free(scores); // 释放动态分配的内存空间
    return 0;
}

把成绩打印出来,看成绩的内容本身是不是对的!

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^