#include <stdio.h>
main()
{
double a[6][6];
int i,j;
for(i=0;i<5;i++){
for(j=0;j<5;j++)
scanf("%lf",&a[i][j]);}
for(j=0;j<5;j++){
a[j][6]=0;
for(i=0;i<5;i++)
a[j][6]+=(a[i][j]/5.0);
printf("课程%d的平均分=%g\n",j+1,a[j][6]);}
for(i=0;i<5;i++){
a[6][i]=a[0][i];
for(j=0;j<5;j++){
if(a[6][i]<a[i][j])
a[6][i]=a[i][j];}
printf("课程%d的最低分=%g\n",i+1,a[6][i]);}
for(i=0;i<5;i++){
a[6][i]=a[0][i];
for(j=0;j<5;j++){
if(a[6][i]>a[i][j])
a[6][i]=a[i][j];}
printf("课程%d的最高分=%g\n",i+1,a[6][i]);}
}
#include <stdio.h>
main()
{
double a[8][5]={0};
int i,j;
for(i=0;i<5;i++){
for(j=0;j<5;j++)
scanf("%lf",&a[i][j]);}
for(j=0;j<5;j++){
for(i=0;i<5;i++)
a[5][j]+=(a[i][j]/5.0);
printf("课程%d的平均分=%g\n",j+1,a[5][j]);}
for(i=0;i<5;i++){
a[6][i]=a[0][i];
for(j=1;j<5;j++){
if(a[6][i]>a[j][i])
a[6][i]=a[j][i];}
printf("课程%d的最低分=%g\n",i+1,a[6][i]);}
for(i=0;i<5;i++){
a[7][i]=a[0][i];
for(j=0;j<5;j++){
if(a[7][i]<a[j][i])
a[7][i]=a[j][i];}
printf("课程%d的最高分=%g\n",i+1,a[7][i]);}
}
main()
{
double a[8][5]={0};
int i,j;
for(i=0;i<5;i++){
for(j=0;j<5;j++)
scanf("%lf",&a[i][j]);}
for(j=0;j<5;j++){
for(i=0;i<5;i++)
a[5][j]+=(a[i][j]/5.0);
printf("课程%d的平均分=%g\n",j+1,a[5][j]);}
for(i=0;i<5;i++){
a[6][i]=a[0][i];
for(j=1;j<5;j++){
if(a[6][i]>a[j][i])
a[6][i]=a[j][i];}
printf("课程%d的最低分=%g\n",i+1,a[6][i]);}
for(i=0;i<5;i++){
a[7][i]=a[0][i];
for(j=0;j<5;j++){
if(a[7][i]<a[j][i])
a[7][i]=a[j][i];}
printf("课程%d的最高分=%g\n",i+1,a[7][i]);}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答 2016-12-15
#include <stdio.h>
int main() {
double a[6][6];
double sum,max,min;
int i,j;
for(i = 0; i < 5; i++) {
sum = 0.0;
for(j = 0;j < 5; j++) {
scanf("%lf",&a[i][j]);
sum += a[i][j];
}
a[i][5] = sum/5.0;//平均成绩
}
for(j = 0;j < 5;j++) {
a[5][j] = 0.0;
max = min = a[0][j];
for(i = 1; i < 5; i++) {
a[5][j] += a[i][j];
if(a[i][j] > max) max = a[i][j];
if(a[i][j] < min) min = a[i][j];
}
printf("课程%d的平均分 = %g\n",j + 1,a[5][j]/5.0);
printf("课程%d的最低分 = %g\n",j + 1,min);
printf("课程%d的最高分 = %g\n",j + 1,max);
}
return 0;
}
int main() {
double a[6][6];
double sum,max,min;
int i,j;
for(i = 0; i < 5; i++) {
sum = 0.0;
for(j = 0;j < 5; j++) {
scanf("%lf",&a[i][j]);
sum += a[i][j];
}
a[i][5] = sum/5.0;//平均成绩
}
for(j = 0;j < 5;j++) {
a[5][j] = 0.0;
max = min = a[0][j];
for(i = 1; i < 5; i++) {
a[5][j] += a[i][j];
if(a[i][j] > max) max = a[i][j];
if(a[i][j] < min) min = a[i][j];
}
printf("课程%d的平均分 = %g\n",j + 1,a[5][j]/5.0);
printf("课程%d的最低分 = %g\n",j + 1,min);
printf("课程%d的最高分 = %g\n",j + 1,max);
}
return 0;
}
第2个回答 2016-12-15
#include <stdio.h>
//输入五个学生的五科成绩,求每科的平均分,最高分,最低分。已有程序
int main(void)
{
double a[5][5] = {0}; // 存储5个学生,每个学生5科成绩, 第一维存储学生,第二维存储课程
int i,j;
double b[5][3]= {0}; // 存储每科平均分,最低分, 最高分,第一维存储课程,第二维存储分数
double max,min,avg;
// 读入成绩
for(i=0;i<5;i++){
for(j=0;j<5;j++)
scanf("%lf",&a[i][j]);}
// 计算每科的平均成绩
for(j=0;j<5;j++){
avg = min = max = a[0][j];
for(i=1;i<5;i++) {
avg += a[i][j];
if(min>a[i][j]) min = a[i][j];
if(max<a[i][j]) max = a[i][j];
}
b[j][0] = avg/5;
b[j][1] = min;
b[j][2] = max;
}
for(j=0; j<5; j++) {
printf("课程%d, 平均分=%g, 最低分=%g, 最高分=%g\n", j, b[j][0], b[j][1], b[j][2]);
}
getchar();
getchar();
}
//输入五个学生的五科成绩,求每科的平均分,最高分,最低分。已有程序
int main(void)
{
double a[5][5] = {0}; // 存储5个学生,每个学生5科成绩, 第一维存储学生,第二维存储课程
int i,j;
double b[5][3]= {0}; // 存储每科平均分,最低分, 最高分,第一维存储课程,第二维存储分数
double max,min,avg;
// 读入成绩
for(i=0;i<5;i++){
for(j=0;j<5;j++)
scanf("%lf",&a[i][j]);}
// 计算每科的平均成绩
for(j=0;j<5;j++){
avg = min = max = a[0][j];
for(i=1;i<5;i++) {
avg += a[i][j];
if(min>a[i][j]) min = a[i][j];
if(max<a[i][j]) max = a[i][j];
}
b[j][0] = avg/5;
b[j][1] = min;
b[j][2] = max;
}
for(j=0; j<5; j++) {
printf("课程%d, 平均分=%g, 最低分=%g, 最高分=%g\n", j, b[j][0], b[j][1], b[j][2]);
}
getchar();
getchar();
}
第3个回答 2016-12-15
#include <stdio.h>
main(){
double a[6][6];
int i,j;
for(i=0;i<5;i++){
for(j=0;j<5;j++)
scanf("%lf",&a[i][j]);}
for(j=0;j<5;j++){
a[j][5]=0;
for(i=0;i<5;i++)
a[j][5]+=(a[i][j]/5.0);
printf("课程%d的平均分=%g\n",j+1,a[j][5]);}
for(i=0;i<5;i++){
a[5][i]=a[0][i];
for(j=0;j<5;j++){
if(a[5][i]>a[j][i])
a[5][i]=a[j][i];}
printf("课程%d的最低分=%g\n",i+1,a[5][i]);}
for(i=0;i<5;i++){
a[5][i]=a[0][i];
for(j=0;j<5;j++){
if(a[5][i]<a[j][i])
a[5][i]=a[j][i];}
printf("课程%d的最高分=%g\n",i+1,a[5][i]);}
}
main(){
double a[6][6];
int i,j;
for(i=0;i<5;i++){
for(j=0;j<5;j++)
scanf("%lf",&a[i][j]);}
for(j=0;j<5;j++){
a[j][5]=0;
for(i=0;i<5;i++)
a[j][5]+=(a[i][j]/5.0);
printf("课程%d的平均分=%g\n",j+1,a[j][5]);}
for(i=0;i<5;i++){
a[5][i]=a[0][i];
for(j=0;j<5;j++){
if(a[5][i]>a[j][i])
a[5][i]=a[j][i];}
printf("课程%d的最低分=%g\n",i+1,a[5][i]);}
for(i=0;i<5;i++){
a[5][i]=a[0][i];
for(j=0;j<5;j++){
if(a[5][i]<a[j][i])
a[5][i]=a[j][i];}
printf("课程%d的最高分=%g\n",i+1,a[5][i]);}
}
这是改正过的,很多地方。
追问那个,还是有点问题
最小值不对
哦错了,是最大值不对
本回答被提问者采纳第4个回答 2016-12-15
数组越界了, 6*6的二维数组, 下标最大只能为5, 你上面有6了追问
不是很明白你的意思,我定义的是5*5为成绩,剩下一列平均分,一列最值。
嗷我看到了,抱歉,我回去会再试一下的。