c语言结构体输入学生信息总分最高最低

学生信息录入

C语言中,我们可以使用结构体来表示学生的信息。首先,我们需要定义一个学生的结构体,包含学生的姓名、学号和总分。

下面是一个示例的结构体定义:

struct Student {
    char name[20];
    int student_id;
    int total_score;
};

我们可以定义一个数组来存储多个学生的信息:

struct Student students[100];

学生信息输入

接下来,我们需要通过键盘输入学生的信息。我们可以使用一个循环来逐个输入学生的信息,并将其存储在结构体数组中。

下面是一个示例的输入代码:

int n;  // 学生数量
printf("请输入学生数量:");
scanf("%d", &n);

for (int i = 0; i < n; i++) {
    printf("请输入第%d个学生的姓名:", i+1);
    scanf("%s", students[i].name);
    
    printf("请输入第%d个学生的学号:", i+1);
    scanf("%d", &students[i].student_id);
    
    printf("请输入第%d个学生的总分:", i+1);
    scanf("%d", &students[i].total_score);
}

总分最高最低学生

在输入完所有学生的信息后,我们可以遍历结构体数组,找到总分最高和最低的学生。

下面是示例的遍历代码:

int max_score = students[0].total_score;
int min_score = students[0].total_score;
int max_index = 0;
int min_index = 0;

for (int i = 1; i < n; i++) {
    if (students[i].total_score > max_score) {
        max_score = students[i].total_score;
        max_index = i;
    }
    
    if (students[i].total_score < min_score) {
        min_score = students[i].total_score;
        min_index = i;
    }
}

最后,我们可以输出总分最高和最低的学生的信息:

printf("总分最高的学生是:%s,学号:%d,总分:%d\n", students[max_index].name, students[max_index].student_id, students[max_index].total_score);
printf("总分最低的学生是:%s,学号:%d,总分:%d\n", students[min_index].name, students[min_index].student_id, students[min_index].total_score);

通过上述代码,我们可以轻松地输入学生的信息,并找到总分最高和最低的学生。这个程序不仅可以作为学生管理系统的一部分,还可以应用于其他类似的应用场景。

本文来自投稿,不代表亲测学习网立场,如若转载,请注明出处:https://www.qince.net/cyuyan2yj.html

郑重声明:

本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。

我们不承担任何技术及版权问题,且不对任何资源负法律责任。

如遇到资源无法下载,请点击这里失效报错。失效报错提交后记得查看你的留言信息,24小时之内反馈信息。

如有侵犯您的版权,请给我们私信,我们会尽快处理,并诚恳的向你道歉!

(0)
上一篇 2023年7月29日 上午2:50
下一篇 2023年7月29日 上午2:50

猜你喜欢