帮我看下这段C++代码有什么错误

2024-12-16 05:35:59
推荐回答(5个)
回答1:

#include
using namespace std;
static int M;
struct Student
{
int num;
char name[10];
float score1;
float score2;
float score3;
float sum;
double average;
Student()
{
num=0;
for(int i=0;i {
name[i]='\0';
}
score1=0;
score2=0;
score3=0;
sum=score1+score2+score3;
average=sum/3;
}
void get()
{
sum=score1+score2+score3;
average=sum/3;
}
};

void input(Student a[]);
void output(Student a[]);

void main()
{
cout<<"请输入学生个数:"<cin>>M;
Student *stu=new Student[M];
input(stu);
output(stu);
delete[] stu;
}

void input(Student a[])
{
int n;
for(n=0;n {
cout<<"学号:";
cin>>a[n].num;
cout<<"姓名:";
cin>>a[n].name;
cout<<"第一门课的成绩:";
cin>>a[n].score1;
cout<<"第二门课的成绩:";
cin>>a[n].score2;
cout<<"第三门课的成绩:";
cin>>a[n].score3;
a[n].get();
}
}

void output(Student a[])
{
int n;
for(n=0;n {
cout< cout<<"学号:"< cout<<"姓名:"< cout<<"第一门课的成绩:"< cout<<"第二门课的成绩:"< cout<<"第三门课的成绩:"< cout<<"总成绩:"< cout<<"平均成绩:"< }
}
修改测试后的代码,正确的

回答2:

有很多错的地方,如果想要运算的话,一般还是用类比较好。结构体中不推荐使用运算的。

回答3:

错误太多了,使用C++语句就用类,用结构体属于混搭。

回答4:

错的很多,你函数的参数个数就不对,为什么不用类代替结构体来处理

回答5:

for(n=0;n<=M;n++)//for循环的变量不对吧?
应该改为:
for(i=0;i