宇宙总统 C/C++
代码如下
include<iostream>
include<cstring>
struct Prisdent
{
int number;
string poll;
};
struct Prisdent prisdent[21];
int main()
{
int n;
cin >> n;for(int i = 1; i <= n; i++)
{
cin >> prisdent[i].poll;
prisdent[i].number = i;
}
P = prisdent[1];
for(int i = 1; i <= n-1; i++)
for(int j = 1; j <= n-i; j++)
{
if(prisdent[j].poll > prisdent[j+1].poll)
swap(prisdent[j], prisdent[j+1]);
}
cout << prisdent[1].number << endl << prisdent[1].poll << endl;
return 0;
}
样例过了,但是 WA 了 3 个,不清楚为什么,求教,谢谢!
回答
问题出在 string字符串之间的运算符“>”,大于号并不能实现理想中的字符串大小比较(长度等等因素会造成影响),我测试了一下>的情况,下面这张图片就是一个很好例子;
以上是 宇宙总统 C/C++ 的全部内容, 来源链接: utcz.com/a/37833.html