还有几个错误没找到,求帮助
#include<stdio.h>#define N 10
struct fen
{
float yuwen;
float shuxue;
float yingyu;
};
struct student
{
char name;
int xuehao;
structfen fenshu;
}stu;
void input();
float ave(int i);
float max();
main()
{
int i;
float average,Maxs,Maxyu,Maxying;
input();
for(i=0;i<10;i++)
{
average=ave(int i);
}
for(i=0;i<N;i++)
{
printf("%s的平均分为",stu.name,average);
}
Maxs=max(average);
Maxyu=max(average);
Maxying=max(average);
for(i=0;i<N;i++)
{
if(stu.fenshu.shuxue==Maxs)
printf("名字:%c 学号:%d 语文成绩:%f 数学成绩:%f 英语成绩:%f",stu.name,stu.xuehao,stu.fenshu.yuwen,stu.fenshu.shuxue,stu.fenshu.yingyu);
if(stu.fenshu.yuwen==Maxyu)
printf("名字:%c 学号:%d 语文成绩:%f 数学成绩:%f 英语成绩:%f",stu.name,stu.xuehao,stu.fenshu.yuwen,stu.fenshu.shuxue,stu.fenshu.yingyu);
if(stu.fenshu.yingyu==Maxying)
printf("名字:%c 学号:%d 语文成绩:%f 数学成绩:%f 英语成绩:%f",stu.name,stu.xuehao,stu.fenshu.yuwen,stu.fenshu.shuxue,stu.fenshu.yingyu);
}
}
void input()
{
int i;
for(i=0;i<N;i++)
{
printf("请输入第%d个学生的信息:",i+1);
scanf("%s%d%f%f%f",&stu.name,&stu.xuehao,&stu.fenshu.yuwen,&stu.fenshu.shuxue,&stu.fenshu.yingyu);
}
}
float ave(int i)
{
floatsum;
sum=(stu.fenshu.shuxue+stu.fenshu.yuwen+stu.fenshu.yingyu);
return sum/3;
}
float max(floataverage)
{
int j=0,i;
float m=0;
for(i=0;i<N;i++)
{
if(average>m)
{
m=average;
}
}
return m;
}
for循环里的average=ave(int i)改为average=ave(i),不用int i
页:
[1]