@[x1007](/user/1109270) 呵呵,看不懂.
你看看我的代码:
```c
#include <iostream>
using namespace std;
int main(){
int n;
cin>>n;
string a[n];
int b[n],c[n],d[n],sum[n],e;
for (int i=0;i<n;i++){
cin>>a[i]>>b[i]>>c[i]>>d[i];
}
for (int i=0;i<n;i++){
sum[i]=b[i]+c[i]+d[i];
}
e=sum[0];
for (int i=0;i<n;i++){
if (e<sum[i])e=sum[i];
}
for (int i=0;i<n;i++){
if (sum[i]==e){
cout<<a[i]<<" "<<b[i]<<" "<<c[i]<<" "<<d[i];
break;
}
}
}
```
你把循环的if判断里面在ans=a;后面加break跳出循环试试
by penguin_is_cool @ 2023-11-30 18:27:33
@[penguin_is_cool](/user/1065176) 错的更离谱了,连输出的输出不了
by x1007 @ 2023-11-30 18:30:07
那题啊?
by Vector_Ding @ 2023-11-30 18:34:03
@[dingzy](/user/933063) p5740
by x1007 @ 2023-11-30 18:37:10
```cpp
如果有多个总分相同的学生,输出靠前的那位。
```
是不是因为这个
by 0907_WDS_0731 @ 2023-11-30 19:09:48
@[x1007](/user/1109270) 那我就没办法了,因为我才刚学没多久,你的格式看不懂
by penguin_is_cool @ 2023-11-30 19:53:17
```cpp
#include<cstdio>
#include<iostream>
using namespace std;
string name[1005];
int cg[1005],mg[1005],eg[1005];
int main(){
int n,max=-999999,t;
scanf("%d",&n);
for(int a=0;a<n;a++)cin>>name[a]>>cg[a]>>mg[a]>>eg[a];
for(int b=0;b<n;b++){
if(cg[b]+mg[b]+eg[b]>max){
max=cg[b]+mg[b]+eg[b];成立更
t=b;
}
}
cout<<name[t]<<" "<<cg[t]<<" "<<mg[t]<<" "<<eg[t];
return 0;
}
```
by Vector_Ding @ 2023-11-30 19:56:40
这就好了
AC了
by Vector_Ding @ 2023-11-30 19:57:42