以下是一个示例程序,可以实现输入 n 个学生的信息,计算每个学生的平均分,然后找出最高分的学生并输出其信息:

#include <stdio.h>
#include <string.h>

#define MAX_N 100

struct Student {
    char name[20];
    int scores[3];
    double average;
};

int main() {
    int n;
    struct Student students[MAX_N];
    double max_average = 0.0;
    int max_index = -1;

    printf('请输入学生数:');
    scanf('%d', &n);

    for (int i = 0; i < n; i++) {
        printf('请输入第%d个学生的信息:\n', i + 1);
        printf('姓名:');
        scanf('%s', students[i].name);
        printf('三门课的成绩(用空格分隔):');
        scanf('%d %d %d', &students[i].scores[0], &students[i].scores[1], &students[i].scores[2]);
        students[i].average = (students[i].scores[0] + students[i].scores[1] + students[i].scores[2]) / 3.0;
        if (students[i].average > max_average) {
            max_average = students[i].average;
            max_index = i;
        }
    }

    printf('\n平均分最高的学生信息如下:\n');
    printf('姓名:%s\n', students[max_index].name);
    printf('三门课的成绩:%d %d %d\n', students[max_index].scores[0], students[max_index].scores[1], students[max_index].scores[2]);
    printf('平均分:%.2f\n', students[max_index].average);

    return 0;
}

示例输入:

请输入学生数:3
请输入第1个学生的信息:
姓名:张三
三门课的成绩(用空格分隔):80 90 70
请输入第2个学生的信息:
姓名:李四
三门课的成绩(用空格分隔):85 95 75
请输入第3个学生的信息:
姓名:王五
三门课的成绩(用空格分隔):90 80 85

示例输出:

平均分最高的学生信息如下:
姓名:王五
三门课的成绩:90 80 85
平均分:85.00
C语言程序:求学生最高平均分并输出信息

原文地址: https://www.cveoy.top/t/topic/orZt 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录