回复 10楼 rjsp
抱歉,我更想知道的是错在哪?有劳了,如果没有更好的回复我就选你吧。
回复 11楼 qwerty7890p
你有两处错误:1、需要#include<string>
2、a[j].size是无符号整形数,需要进行转换才能比较,否则-1是无符号里最大的数,得不到正确结果
你的代码修改如下,可得到正确答案:
程序代码:
#include<iostream> #include<string> using namespace std; int main() { string a[499]; char t; int i=0; while((cin>>a[i++])&&(t=cin.get())!='\n'); int j,Max=-1,Min=499,xn,nn; for(j=0;j<i;j++) { Min=a[j].size()<Min?(nn=j,a[j].size()):Min; Max=(int)a[j].size()>Max?(xn=j,a[j].size()):Max; } cout<<a[xn]<<endl<<a[nn]<<endl; return 0; }