标题:求各位大佬编写一下这个程序,感谢!
只看楼主
crr
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2020-3-15
结帖率:0
已结贴  问题点数:20 回复次数:1 
求各位大佬编写一下这个程序,感谢!
定义一个结构体数组用以保存五个学生的以下信息:学号,姓名,性别,家庭住址,3门课程成绩。
要求:
1.从键盘输入5个学生的数据。
2. 显示5个学生中有一门不及格和所有课程均不及格的人数。
3. 检索学号为NUM的学生的3门课程成绩,NUM由键盘输入。
搜索更多相关主题的帖子: 编写 课程 输入 学号 学生 
2020-03-15 12:52
林月儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:湖南
等 级:版主
威 望:138
帖 子:2276
专家分:10647
注 册:2015-3-19
得分:20 
程序代码:
#include <stdio.h>
typedef struct student{
    int num;
    char name[20];
    char sex[3];
    char addr[200];
    int score[3];
}stu;
/**

 * 1.从键盘输入5个学生的数据。

 * 2. 显示5个学生中有一门不及格和所有课程均不及格的人数。

 * 3. 检索学号为NUM的学生的3门课程成绩,NUM由键盘输入。

 */
int main() {
    printf("请输入5名同学信息(学号,姓名,性别,家庭住址,3门课程成绩)");
    stu stus[5];
    int oneLow = 0;
    int allLow = 0;
    for(int i = 0; i < 5; i++) {
        scanf("%d %s %s %s %d %d %d", &stus[i].num, stus[i].name, stus[i].sex, stus[i].addr,
            &stus[i].score[0], &stus[i].score[1], &stus[i].score[2]);
        printf("%d %s %s %s %d %d %d\n", stus[i].num, stus[i].name, stus[i].sex, stus[i].addr,
            stus[i].score[0], stus[i].score[1], stus[i].score[2]);
        int count = 0;
        for(int j = 0; j < 3; j++) {
            if(stus[i].score[j] < 60) {
                count++;
            }
        }
        allLow += count == 3 ? 1 : 0;
        oneLow += count > 0 ? 1 : 0;
    }
    printf("\n有一门成绩不及格人数:%d,所有成绩不及格的人数:%d", oneLow, allLow);
    int num;
    printf("\n请输入要检索学生的学号:");
    scanf("%d",&num);
    for(int i = 0; i < 5; i++) {
        if(stus[i].num == num) {
             printf("\n学生(%s)的三门成绩为:%d %d %d", 
                 stus[i].name, stus[i].score[0], stus[i].score[1], stus[i].score[2]);
            break;
        }
    }

 
    return 0;
}


[此贴子已经被作者于2020-3-15 14:02编辑过]


剑栈风樯各苦辛,别时冰雪到时春
2020-03-15 13:57



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-499769-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.064423 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved