LoloLolo1223
2021-04-06 15:52
采纳率: 100%
浏览 351
已采纳

用Java二维数组输出成绩平均分

通过二维数组统计5个学生语文、数学、英语的成绩,首先输入学生人数,然后依次输入各个学生的成绩,最后统计每个学生的课程平均成绩,及每门课的平均成绩,并列表输出。

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • 已采纳

    参考代码:

    /* Note:Your choice is C IDE */
    #include "stdio.h"
    void main()
    {
        /*
            1、一个班有5个学生,每个学生有3门课的成绩,定义一个二维数组来存储学生的成绩,并初始化以下数据:
            学号(整数)    语文    数学    英语    总分
            100            80        85        90    
            101            75        90        80    
            102            60        50        70    
           1)依次输入五个学生的学号及各科成绩,自动计算总分并存储,然后输出。
        
           2)输出每个学生的学号及总分
        
           3)输出分数最高的学生的学号、总分
        */
        int a[5][5];
        int i,j;
        int sum=0,max=0,num=0;
        for(i=0;i<5;i++)
        {
            printf("请输入第%d个学生的学号,语文,数学,英语成绩:",i+1);
            sum=0;
            for(j=0;j<4;j++)
            {
                scanf("%d",&a[i][j]);    
                if(j>0)
                    sum+= a[i][j];
            }
            //保存总分
            a[i][4]=sum;
        }
        //1)依次输入五个学生的学号及各科成绩,自动计算总分并存储,然后输出。
        printf("学号\t语文\t数学\t英语\t总分\n");
        for(i=0;i<5;i++)
        {
            for(j=0;j<5;j++)
            {
                printf("%d\t",a[i][j]);
            }    
            printf("\n");
        }
        // 2)输出每个学生的学号及总分
        printf("学号\t总分\n");
        //初始化
        num=a[0][0];
        sum=a[0][4];
        for(i=0;i<5;i++)
        {
            //求总分最高的学生
            if(sum<a[i][4])
            {
                num=a[i][0];
                sum=a[i][4];    
            }
            printf("%d\t%d\n",a[i][0],a[i][4]);
        }
        // 3)输出分数最高的学生的学号、总分
        printf("学号=%d的学生成绩分数最高,成绩=%d\n",num,sum);
    }

    评论
    解决 无用
    打赏 举报
  • 查看更多回答(4条)

相关推荐 更多相似问题