编写C语言,求某班50个学生的5门课程的平均成绩,

如题所述

这是一个用C语言编写的程序,可以求某班50个学生的5门课程的平均成绩。程序的思路是用一个二维数组存储每个学生的每门课程的成绩,然后用两个循环遍历数组,计算每门课程的总分和平均分,并输出到屏幕上。
//引入stdio.h头文件,用于输入输出#include <stdio.h>//定义常量,表示学生数和课程数#define STUDENT 50#define COURSE 5//定义主函数int main(){ //声明一个二维数组,用于存储每个学生的每门课程的成绩
int score[STUDENT][COURSE]; //声明一个一维数组,用于存储每门课程的总分
int sum[COURSE]; //声明一个一维数组,用于存储每门课程的平均分
double avg[COURSE]; //声明两个变量,用于循环控制
int i, j; //初始化每门课程的总分为0
for (i = 0; i < COURSE; i++)
sum[i] = 0; //提示用户输入每个学生的每门课程的成绩,并将其存入二维数组中
printf("请输入%d个学生的%d门课程的成绩:\n", STUDENT, COURSE); for (i = 0; i < STUDENT; i++) for (j = 0; j < COURSE; j++) scanf("%d", &score[i][j]); //用两层循环遍历二维数组,计算每门课程的总分和平均分,并将其存入一维数组中
for (i = 0; i < STUDENT; i++) for (j = 0; j < COURSE; j++)
sum[j] += score[i][j]; //累加第j门课程的成绩

for (i = 0; i < COURSE; i++)
avg[i] = sum[i] / (double)STUDENT; //计算第i门课程的平均分

//输出每门课程的总分和平均分到屏幕上
printf("各科目总分和平均分如下:\n"); printf("科目\t总分\t平均分\n");
for (i = 0; i < COURSE; i++) printf("%d\t%d\t%.2f\n", i + 1, sum[i], avg[i]); //保留两位小数

return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-04-26
#include<stdio.h>
int main()
{int i,j,x,s=0;
for(i=0;i<50;i++)
for(j=0;j<5;j++)
{scanf("%d",&x);
s+=x;
}
printf("%.2f\n",(float)s/(50*5));
return 0;
}本回答被网友采纳
相似回答