鱼C论坛

 找回密码
 立即注册
查看: 5170|回复: 0

[学习笔记] C语言:用二维数组记录学生成绩,并算出平均分

[复制链接]
发表于 2021-5-19 13:11:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 划句顾 于 2021-5-26 10:52 编辑

某学习小组有4名同学,学习了5门课程,求每个同学的平均分和每门课程的平均分。
算法分析:
           ①定义一个二维数组score[5][6](最后一行和最后一列存放平均数)
           ②为(4*5)数组赋值;
           ③求行平均数,把平均数存入score[i][5]中(i=0-3);
           ④求列平均数,把平均数存入score[4][j]中(j=0-4);
           ⑤输出整个数组。


  1. /****************************************************
  2.   @fuction:求每个同学的平均分和每门课程的平均分
  3.   @time   :2021/4/29
  4.   @author :LaoGu
  5. *****************************************************/
  6.   #include<stdio.h>

  7. int main()
  8. {
  9.         int a[5][6]={0},i,j;  //a[5][6]={0},数组a的值全为0,这样后面给i赋值时,可以保证a[5][6]=0; i为行,j为列
  10.         int sum1 = 0, sum2 = 0,ave1 = 0,ave2 =0;
  11. /*****
  12. 分别输入a[i][j]的值
  13.         *****/
  14.         printf("输入a[i][j]:\n");       
  15.         for(i = 0;i < 4; i++)
  16.                 for(j = 0;j < 5;j++)
  17.                         scanf("%d",&a[i][j]);
  18. /*****
  19. 计算每个同学分数的平均值
  20.         *****/       
  21.         for(i =0;i < 4;i++)
  22.         {
  23.                 for(j = 0;j < 5;j++)
  24.                 {
  25.                         sum1 += a[i][j];
  26.                 }
  27.                 ave1 = sum1 / 5;
  28.                 a[i][5] = ave1;   //最后的格来放成绩的平均值
  29.                 sum1 = 0;      //置零是为了重新记录每个同学的成绩,让同学的初始成绩为0
  30.         }
  31. /*****
  32. 计算同一科目分数的平均值
  33.         *****/
  34.         for(j =0;j < 5;j++)
  35.         {
  36.                 for(i = 0;i < 4;i++)
  37.                 {
  38.                         sum2 += a[i][j];
  39.                 }
  40.                 ave2 = sum2 / 4;
  41.                 a[4][j] = ave2;   //最后的格来放成绩的平均值
  42.                 sum2 = 0;   //置零是为了重新记录每个科目的成绩,让科目平均值的初始值为0
  43.         }
  44. /*****
  45. 分别输出a[i][j]的值
  46.         *****/
  47.         for(i = 0;i < 5; i++)
  48.         {
  49.                 for(j = 0;j < 6;j++)
  50.                         printf("%5d",a[i][j]);
  51.        
  52.             printf("\n");
  53.         }
  54.         return 0;
  55. }
复制代码
1621400983(1).png
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-7 14:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表