问题:
输入五名大学生4门功课的成绩,然后求出
每个大学生的总分
每门课程的平均分
输出总分最高的学生的姓名和总分数
#include<bits/stdc++.h>
using namespace std;
struct node{
char name[10];
int scorea,scoreb,scorec,scored;
}a[5];//加sum[5]就会报错,node跟int类型不匹配
int main(){
for(int i=0;i<5;i++){
cin>>a[i].name>>a[i].scorea>>a[i].scoreb>>a[i].scorec>>a[i].scored;
}
int sum[5]={0,0,0,0,0};
for(int i=0;i<5;i++){
sum[i]=a[i].scorea+a[i].scoreb+a[i].scorec+a[i].scored;
}
cout<<"每个大学生的总分依次为:";
for(int i=0;i<5;i++){
cout<<sum[i]<<" ";
}
cout<<endl;
//每门课程的平均分
int sa=0,sb=0,sc=0,sd=0;
for(int i=0;i<5;i++){
sa+=a[i].scorea;
sb+=a[i].scoreb;
sc+=a[i].scorec;
sd+=a[i].scored;
}
cout<<"每门课程的平均分依次为:";
cout<<sa/5<<" "<<sb/5<<" "<<sc/5<<" "<<sd/5<<endl;
int max=-1;
int t;
for(int i=0;i<5;i++){
if(sum[i]>max){
max=sum[i];
t=i;
}
}
cout<<"总分最高的学生的姓名和总分为:";
cout<<a[t].name<<" "<<sum[t]<<endl;
return 0;
}
总结
运行是没有问题的,但是如果把sum[5]放入到结构体那块去写,就会报错,什么node和int不匹配,明天再练上几道结构体看看吧