碌碌无为的程序猿 2019-06-24 22:14 采纳率: 100%
浏览 1105
已采纳

C语言统计学生信息,超简单的一个问题

【高价悬赏】我电脑没有环境和软件,就发到这里了。
题目要求:
编写一个C语言程序,输入10名同学的8门课成绩,分别统计出每个同学的总成绩与平均成绩及10名同学每门课的平均成绩。并按表格的形式输出。(表格形式为:一共12行11列,第一行为表头,10列依次显示姓名、8门课的课程名称、总分、平均分;从第二行开始为具体内容,依次显示10名同学的名字及其8门课成绩及总分和平均分,第十二行只显示9列,分别显示平均分及8门课的平均分分值。)

  • 写回答

3条回答 默认 最新

  • 白色一大坨 2019-06-25 14:17
    关注

    本来这种作业题,我是不会在csdn回答,不过既然有人瞎说八道,我就纠正一下吧:

    #include<stdio.h>
    #define N 10
    struct student
    {
        int num;          //学生学号
        char name[10];    //学生姓名
        float course[8];      //8门课程成绩
        float total;        //总分
        float avg;        //平均分
    }st[N];             //定义结构体数组
    int main()
    {
        int i,j;  
        int sum = 0;
        float average[9] = {0};
        system("mode con cols=120 lines=40");
        for (i = 0; i < N; i++)
        {
            printf("请输入学生学号:");
            scanf("%d", &st[i].num);
            printf("请输入学生姓名:");
            scanf("%s", st[i].name);
            printf("请输入学生8门成绩:\n");
            st[i].total = 0;
            for (j = 0; j < 8;j++)
            {
                scanf("%f", &st[i].course[j]);
                average[j] += st[i].course[j];//每门课累加值
                st[i].total += st[i].course[j];     //统计学生的总分
            }
    
            average[8] += st[i].total;
            st[i].avg = st[i].total / 8;//学生平均分
        }
    
        for (j = 0; j < 9; j++)
        {
            average[j] = average[j] / N;
        }
    
        printf("学号   姓名   课程1   课程2   课程3  课程4   课程5   课程6   课程7   课程8   总分   平均分\n");
        for (i = 0; i < N; i++)
        {
            printf("%-7d %-7s %-7.0f %-7.0f %-7.0f %-7.0f %-7.0f %-7.0f %-7.0f %-7.0f %-7.0f %-7.2f\n",
                st[i].num, st[i].name, st[i].course[0], st[i].course[1], st[i].course[2], 
                st[i].course[3], st[i].course[4], st[i].course[5], st[i].course[6], st[i].course[7], st[i].total, st[i].avg);
        }
    
        printf("平均            ");
        for (j = 0; j < 9; j++)  printf("%-8.2f", average[j]);
        printf("\n");
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 为什么nacos注册失败了呀?
  • ¥15 为什么在配置Linux系统的时候执行脚本总是出现E: Failed to fetch http:L/cn.archive.ubuntu.com
  • ¥15 Cloudreve保存用户组存储空间大小时报错
  • ¥15 伪标签为什么不能作为弱监督语义分割的结果?
  • ¥15 编一个判断一个区间范围内的数字的个位数的立方和是否等于其本身的程序在输入第1组数据后卡住了(语言-c语言)
  • ¥15 游戏盾如何溯源服务器真实ip?
  • ¥15 Mac版Fiddler Everywhere4.0.1提示强制更新
  • ¥15 android 集成sentry上报时报错。
  • ¥50 win10链接MySQL
  • ¥15 抖音看过的视频,缓存在哪个文件