| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 418 人关注过本帖
标题:[求助]这可怕的程序究竟错哪儿了
只看楼主 加入收藏
断浪留丹
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-12-11
收藏
 问题点数:0 回复次数:2 
[求助]这可怕的程序究竟错哪儿了
#include<stdio.h>
#include<stdlib.h>
void InputScore(void);
int FindMaxScore(int n);
float AverageEachStu(int n);
float AverageEachCourse(int n,int i);
void Calculate(int n);
void DisplayScore(int i);
#define N 10
int main(void)
{
int i;
int score[N][5];
float averageStu[N];
float averageCourse[5];
int stu=0;
int maxstu;
for(stu=0;stu<N;stu++)
{
InputScore[stu];
Calculate[stu];
Display[stu];
}
maxstu=FindMaxScore(stu);
printf("得该课程最高分的人以及他的分数是%f\n",Display[maxstu]);
for(i=0;i<5;i++)
averageCourse[i]=AverageEachCourse(N,i);
printf("平均成绩是%f\n",averageCourse[i]);
return 0;
}
void IputScore(void)
{
int i;
struct StudentScore
{
int num[30];
char name[30];
float score[30];
}
struct StudentScore student[N];
for(i=0;i<N;i++)
{
printf("\n请输入第%d个人的学号\n",i+1);
printf("输入姓名:");
gets(student->name);
printf(\n输入成绩:);
gets(student->score);
}
}
int FindMaxScore(int n)
{
int max=0;
for(n=0;n<5;n++)
{
int i;
for(i=0;i<N;i++)
{
max=score[i][n]>score[max][n]?i:max;
}
}
return score[max][n];
}
float AverageEachStu(int n)
{
int i,sum=0;
for(n=0;n<N;n++)
{
for(i=0;i<5;i++)
sum+=score[n][i];
}
return sum/5;
}
float AverageEachCourse(int n,int i)
{
int sum=0;
for(i=0;i<5;i++)
{
for(n=0;n<N;n++)
sum+=score[n][i];
}
return sum/N;
}
void Calculate(int n)
{
int i;
for(n=0;n<N;n++)
averageStu[n]=AverageEachStu(n);
for(i=0;i<5;i++)
averageCourse[i]=AverageEachCourse(n,i);
}
void DisplayScore(int i)
{
struct StudentScore
{
int num[30];
char name[30];
float score[30];
float averageStu[30];
}
struct StudentScore student[N];
for(i=0;i<N;i++)
printf("\n%d\t\t\t%s\t\t\t%f\t\t\t%f\n",student->num,student->name,student->score,student->averageStu);
}
2006-12-11 14:14
秋阁
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2006-7-15
收藏
得分:0 

#include<stdio.h>
#include<stdlib.h>
void InputScore(void);
int FindMaxScore(int n);
float AverageEachStu(int n);
float AverageEachCourse(int n,int i);
void Calculate(int n);
void DisplayScore(int i);
void InputScore(void);
#define N 10
struct StudentScore
{
int num[30];
char name[30];
char score[30];
};

struct StudentScore student[N];
int score[N][5];
float averageStu[N];
float averageCourse[5];
int main(void)
{
int i;
int stu=0;
int maxstu;
for(stu=0;stu<N;stu++)
{
InputScore();
Calculate(stu);

}
maxstu=FindMaxScore(stu);
printf("得该课程最高分的人以及他的分数是%f\n",maxstu);
for(i=0;i<5;i++)
averageCourse[i]=AverageEachCourse(N,i);
printf("平均成绩是%f\n",averageCourse[i]);
return 0;
}
void InputScore(void)
{
int i;

for(i=0;i<N;i++)
{
printf("\n请输入第%d个人的学号\n",i+1);
printf("输入姓名:");
gets(*student->name);
printf("\n输入成绩:");
gets(*student->score);
}
}
int FindMaxScore(int n)
{
int max=0;
for(n=0;n<5;n++)
{
int i;
for(i=0;i<N;i++)
{
max=score[i][n]>score[max][n]?i:max;
}
}
return score[max][n];
}
float AverageEachStu(int n)
{
int i,sum=0;
for(n=0;n<N;n++)
{
for(i=0;i<5;i++)
sum+=score[n][i];
}
return sum/5;
}
float AverageEachCourse(int n,int i)
{
int sum=0;
for(i=0;i<5;i++)
{
for(n=0;n<N;n++)
sum+=score[n][i];
}
return sum/N;
}
void Calculate(int n)
{
int i;
for(n=0;n<N;n++)
averageStu[n]=AverageEachStu(n);
for(i=0;i<5;i++)
averageCourse[i]=AverageEachCourse(n,i);
}
void DisplayScore(int i)
{

for(i=0;i<N;i++)
printf("\n%d\t\t\t%s\t\t\t%f\t\t\t%f\n",student->num,student->name,student->score);
}

很糟糕的程序,我只是把它改到能运行,楼主自己对照下

2006-12-11 15:04
爱上夜
Rank: 1
等 级:新手上路
帖 子:33
专家分:0
注 册:2006-9-12
收藏
得分:0 

注意你的程序没有返回


2006-12-12 11:12
快速回复:[求助]这可怕的程序究竟错哪儿了
数据加载中...
 
   



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

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