主题:学的稀里糊涂的,希望大家帮我找错改一改这个程序。
用一个函数实现N 个学生数据的输入,用另一个函数负责求每个学生三门课程的平
均成绩,再用一个函数求出平均分最高的学生并输出该学生的数据。要求平均分和平均分最
高的学生数据都在主函数中输出。
这是我自己写加参考老师的提示弄出来的,错误很多。希望大家帮我找找错、
#include<stdio.h>
struct Student
{
int num;
char name[20];
char classname[20];
float score[3];
float aver_score[3];
}
Student[20];
void averagescore (Student stu[],int number);
int maxscore(Student stu[],int number);
int main()
{
Student stu[20];
int stu_number=0;
cout<<"please enter student number"<<endl;
cin>>stu_number;
for(int i=0;i<=stu_number;i++)
{
cout<<"please enter NO."<<i<< "student info: num name class score1 score2 score3";
cin>>stu[i].num>>stu[i].name>>stu[i].classname;
cin>>stu[i].score[0]>>stu[i].score[1]>>stu[i].score[2];
}
cout<<stu[stu_number].name<<averagescore(stu[],stu_number)<<maxscore(stu[].aver_score,stu_number)endl;
return 0;
}
void averagescore(student stu[],int number)
{
for(int i=0;i<=number;i++)
{
float Stu[i],score=(stu[i].score[0]+ stu[i].score[1]+stu[i].score[2])/3.0;
}
}
int maxscore(Student stu[],int number)
{
int max,j,t;
for(int i=0;i<=number;i++)
{
max=i;
for(j=i+1;j<=number;j++)
{
if(stu[j]>stu[max])
{
t=stu[max];
stu[max]=stu[j];
stu[j]=t;
}
}
}
return max;
}
均成绩,再用一个函数求出平均分最高的学生并输出该学生的数据。要求平均分和平均分最
高的学生数据都在主函数中输出。
这是我自己写加参考老师的提示弄出来的,错误很多。希望大家帮我找找错、
#include<stdio.h>
struct Student
{
int num;
char name[20];
char classname[20];
float score[3];
float aver_score[3];
}
Student[20];
void averagescore (Student stu[],int number);
int maxscore(Student stu[],int number);
int main()
{
Student stu[20];
int stu_number=0;
cout<<"please enter student number"<<endl;
cin>>stu_number;
for(int i=0;i<=stu_number;i++)
{
cout<<"please enter NO."<<i<< "student info: num name class score1 score2 score3";
cin>>stu[i].num>>stu[i].name>>stu[i].classname;
cin>>stu[i].score[0]>>stu[i].score[1]>>stu[i].score[2];
}
cout<<stu[stu_number].name<<averagescore(stu[],stu_number)<<maxscore(stu[].aver_score,stu_number)endl;
return 0;
}
void averagescore(student stu[],int number)
{
for(int i=0;i<=number;i++)
{
float Stu[i],score=(stu[i].score[0]+ stu[i].score[1]+stu[i].score[2])/3.0;
}
}
int maxscore(Student stu[],int number)
{
int max,j,t;
for(int i=0;i<=number;i++)
{
max=i;
for(j=i+1;j<=number;j++)
{
if(stu[j]>stu[max])
{
t=stu[max];
stu[max]=stu[j];
stu[j]=t;
}
}
}
return max;
}