| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 567 人关注过本帖
标题:[求助] 我自己写的
只看楼主 加入收藏
lidong3694
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-2-26
收藏
 问题点数:0 回复次数:7 
[求助] 我自己写的
#include <stdio.h>
main()
{ int M,N,i,j;
float score[10][10],sc[10][10],sum=0;
printf("inputs a numbers:\n");
scanf("%d%d",&M,&N);
printf("the stduents NO.=%d,the subjects NO.=%d",M,N);
printf("\n");
{for (i=0;i<M;i++)
for (j=0;j<N;j++)
scanf("%d",&scroe[i][j]);
}
{ for (i=0;i<M;i++)
for (j=0;j<N;j++)
sum+=score[i][j];
sc[5][j]=sum/N;
}
{ for (i=0;i<M;i++)
for (j=0;j<N;j++)
sum+=score[i][j];
sc[i]5]=sum/M;
}
printf("the students average =%.2f,the subjects average =%.2f",sc[5][j],sc[i][5]);
getch();
}
注:
{题目:求每个学生平均成绩和每门课的平均成绩;学生数为M个,有N门课程;(M=5,N=5)}

我不知道错在哪,每次运行时,结果却出现两个0.00,我实在是检查不出.
请各位学长们,帮我找一找,我在这先谢谢您们了!!
2006-02-26 10:38
lj_860603
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:714
专家分:0
注 册:2006-1-25
收藏
得分:0 
你应该定义一个学生名字,学号和成绩等等的结构体.你这样写当然不行啦.

我的原则很简单:不做不喜欢的事!
2006-02-26 11:09
xlgoodday
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2005-10-14
收藏
得分:0 

有逻辑错误就调试。


2006-02-26 11:39
一天进步一点点
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-2-19
收藏
得分:0 
以下是引用lidong3694在2006-2-26 10:38:00的发言:
#include <stdio.h>
main()
{ int M,N,i,j;
int score[10][10],sc[10][10],sum=0;
printf("inputs a numbers:\n");
scanf("%d%d",&M,&N);
printf("the stduents NO.=%d,the subjects NO.=%d",M,N);
printf("\n");
for (i=0;i<M;i++)
for (j=0;j<N;j++)
scanf("%d",&scroe[i][j]);

for (i=0;i<M;i++)
for (j=0;j<N;j++)
{sum+=score[i][j];
sc[5][j]=sum/N;
}
for (i=0;i<M;i++)
for (j=0;j<N;j++)
{sum+=score[i][j];
sc[i]5]=sum/M;
}
printf("the students average =%.2dthe subjects average =%.2d",sc[5][j],sc[i][5]);
getch();
}
注:
{题目:求每个学生平均成绩和每门课的平均成绩;学生数为M个,有N门课程;(M=5,N=5)}

我不知道错在哪,每次运行时,结果却出现两个0.00,我实在是检查不出.
请各位学长们,帮我找一找,我在这先谢谢您们了!!

你的程序内型不匹配啊,可能还有其他错误.


2006-02-26 11:51
wuxiao_v
Rank: 1
等 级:新手上路
帖 子:76
专家分:0
注 册:2005-9-4
收藏
得分:0 
#include <stdio.h>
main()
{ int M,N,i,j;
float score[10][10],sc[10][10],sum=0;
printf("inputs a numbers:\n");
scanf("%d%d",&M,&N);
printf("the stduents NO.=%d,the subjects NO.=%d",M,N);
printf("\n");
{for (i=0;i<M;i++)
for (j=0;j<N;j++)
scanf("%d",&scroe[i][j]);
}
{ for (i=0;i<M;i++)
for (j=0;j<N;j++)
sum+=score[i][j];
sc[5][j]=sum/N;
}
{ for (i=0;i<M;i++)
for (j=0;j<N;j++)
sum+=score[i][j];
sc[i]5]=sum/M;
}
printf("the students average =%.2f,the subjects average =%.2f",sc[5][j],sc[i][5]);
getch();
}
注:
{题目:求每个学生平均成绩和每门课的平均成绩;学生数为M个,有N门课程;(M=5,N=5)}


输入数据这里有问题,数据录入完毕后score里还全都是0呢
可能和楼上说的有关系?

[此贴子已经被作者于2006-2-26 12:11:17编辑过]


2006-02-26 12:08
一天进步一点点
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-2-19
收藏
得分:0 
我测试了一下,scanf语句没有问题,可能是给sum赋值的时候,真不明白.

2006-02-26 13:44
一天进步一点点
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-2-19
收藏
得分:0 

楼主这是我给你修改的程序,已经运行通过了,结果正确!

#include <stdio.h>
main()
{int m,n,i,j,k; /*m为学生数,n为课程成绩*/
int score[10][10],sc[10],subvera[10],sum=0;
printf("inputs a numbers:\n");
scanf("%d%d",&m,&n);
printf("the stduents NO.=%d,the subjects NO.=%d",m,n);
printf("\n");
for(i=0;i<m;i++)
for(j=0;j<n;j++)
scanf("%d",&score[i][j]);
for (i=0;i<m;i++)
for (j=0;j<n;j++)
printf("%5d",score[i][j]);
printf("\n");
for (i=0;i<m;i++) /*一个学生的平均成绩*/
{for (j=0;j<n;j++)
sum+=score[i][j];
sc[i]=sum/n;
sum=0;
}
for (j=0;j<n;j++)
{for (i=0;i<m;i++) /*每门课程的平均成绩*/
sum+=score[i][j];
subvera[j]=sum/m;
sum=0;
}
for(j=0;j<m;j++)
printf("the %d students average =%d\n",j+1,sc[j]);
printf("\n");

for(j=0;j<n;j++)
printf("the %d subjects average =%d\n",j+1,subvera[j]);
getch();
}


2006-02-26 14:53
lidong3694
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-2-26
收藏
得分:0 
非常感谢你们,第七楼的学长们改得很正确,我也测试过,正确,很感谢你们.
还有其他楼的学长们.
我觉得我主要出错是因为,没有定义的好,没理解好.
 谢谢你们了@!!
2006-02-26 16:53
快速回复:[求助] 我自己写的
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017804 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved