关于数组求指教

小锐 2012-08-13 01:22:49
通过键盘输入3名学生4门课程的成绩,分别求每个学生的平均成绩和每门课程的平均成绩。要求所有成绩均放入一个4行5列的数组中,输入时同一人的数据间用空格,不同人用回车,其中最后一列和最后一行分别放每个学生的平均成绩、每门课程的平均成绩和班级总平均成绩(希望各大哥哥大姐姐门尽量用代码,看代码比较容易懂和理解)
...全文
106 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
s030903012 2012-08-13
  • 打赏
  • 举报
回复
#include<stdio.h>
int main()
{
int i,j;
float score[4][5]={0};
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf("%f",&score[i][j]);
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
score[i][4]+=score[i][j];
score[i][4]/=4;
}
for(j=0;j<5;j++)
{
for(i=0;i<3;i++)
score[3][j]+=score[i][j];
score[3][j]/=3;
}
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
printf("%.1f ",score[i][j]);
printf("\n");
}
return 0;
}

//仅供参考
s030903012 2012-08-13
  • 打赏
  • 举报
回复
#include<stdio.h>
int main()
{
int i,j;
float score[4][5]={0};
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf("%f",&score[i][j]);
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
score[i][4]+=score[i][j];
score[i][4]/=4;
}
for(j=0;j<5;j++)
{
for(i=0;i<3;i++)
score[3][j]+=score[i][j];
score[3][j]/=3;
}
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
printf("%.1f ",score[i][j]);
printf("\n");
}
return 0;
}

//仅供参考
酱油党 2012-08-13
  • 打赏
  • 举报
回复
#include <stdlib.h>
#include <stdio.h>

int main()
{
BEG:
double x_core[4][5];
for ( int person = 0 ; person < 3 ; ++person )
{
printf( " Please Input %d Person 's Degrees!\r\n" , person + 1 );
scanf( "%d,%d,%d,%d" , &x_core[person][0] , &x_core[person][1] , &x_core[person][2] , &x_core[person][3] );
for ( int kind = 0 ; kind < 4 ; ++kind )
{
if ( x_core[person][kind] > 100 || x_core[person][kind] < 0 )
{
printf( "Input Error , Please Input One More Time !\r\n" );
goto BEG;
}
x_core[person][4] = ( x_core[person][0] + x_core[person][1] + x_core[person][2] + x_core[person][3] ) / 4;
}
}
for ( int kind = 0 ; kind < 4 ; ++kind )
{
x_core[3][kind] = ( x_core[0][kind] + x_core[1][kind] + x_core[2][kind] )/ 3;
}
x_core[3][4] = ( x_core[0][4] * 4 + x_core[1][4] * 4 + x_core[2][4] * 4 ) / ( 3 * 4 );
}
//仅供参考!~
didijiji 2012-08-13
  • 打赏
  • 举报
回复
恩,说的已经很详细了。
[Quote=引用 1 楼 的回复:]
声明定义一个double型的2维数组,维度是4和5
然后等待输入原始数据,并根据你定义的间隔符号来确认
接受的时候就把原始数据放入数组中了
当然,可以检查一下输入的合法性,比如不小于0且不大于100等等
然后再求行平均和列平均,貌似代码没有难度

楼主是初学者,建议自己打代码上来
我们可以帮你分析代码的优劣
利于你的提高
[/Quote]
ies_sweet 2012-08-13
  • 打赏
  • 举报
回复


声明定义一个double型的2维数组,维度是4和5
然后等待输入原始数据,并根据你定义的间隔符号来确认
接受的时候就把原始数据放入数组中了
当然,可以检查一下输入的合法性,比如不小于0且不大于100等等
然后再求行平均和列平均,貌似代码没有难度

楼主是初学者,建议自己打代码上来
我们可以帮你分析代码的优劣
利于你的提高

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧