#include
#include
using namespace std;
int main()
{
int numbers,scores,i,j;
string name;
cout<<"Numbers of students";
cin>>numbers;
for(i=0;i
{
cout<<"Write the name";
cin>>name;
cout<<"Write the scores";
cin>>scores;
}
int arr[numbers]={scores};
int max=0;
for(int j=0;j
{if(arr[j]>max)
{max=arr[j];
}
}
cout<
cout<
return 0;
}
int main()
{
int numbers,i,j;
cout<<"Numbers of students";
cin>>numbers;
int scores[numbers];
string name[numbers];
for(i=0;i<numbers;i++)
{
cout<<"Write the name";
cin>>name[i];
cout<<"Write the scores";
cin>>scores[i];
}
int max=0;
for(j=0;j<numbers;j++)
{if(scores[j]>scores[max])
{max=j;
}
}
cout<<scores[max]<<endl;
cout<<name[max]<<endl;
return 0;
}
你在第一个for循环中用cin接收name和score,之前的值会被覆盖,所以只剩下最后一个的值,你需要用数组存放起来,而不是变量
不知道你这个问题是否已经解决, 如果还没有解决的话: