【发布时间】:2020-11-04 09:51:32
【问题描述】:
我编写了以下程序来显示给定字符串中最长的名称,但输出与预期不符。
#include <iostream>
using namespace std;
int main()
{
int t;
cin>>t;
while(t--)
{
int n;
cin>>n;
string rr[n];
for(int i=0;i<n;i++)
{
cin>>rr[i];
}
string max = rr[0];
for(int j=1;j<n;j++)
{
if(rr[j]>max)
{
max=rr[j];
}
}
cout<<"Longest name in the string is:"<<max<<endl;
}
return 0;
}
2 // no of test case
6 // no of elements in string
Harsh
Gaurav
GauravMiglani
HarshAgarwal
GeeksforGeeksGeeks
Programmiz
Longest name in the string is:Programmiz
【问题讨论】:
-
你好。欢迎来到堆栈溢出。根据它的编码方式,这是来自某个编码竞赛/平台吗?如果您添加了链接,将会很有帮助。此外,您可能想详细说明这个问题。目前尚不清楚“最长的名字”是什么意思。另外,在示例中,应该有 2 个测试用例,但只提到了一个
-
您显示的是实际输出还是预期输出?描述程序应该做什么的细节。请注意,正如所写,您的程序甚至无法读取您显示的输入中的第二个整数。
-
if(rr[j]>max)==>if(rr[j].length() > max.length()) -
@AbhayAravinda 抱歉,我从未使用过 stackflow。这是链接。 practice.geeksforgeeks.org/problems/display-longest-name/0/…
-
@paddy 这是实际输出。
标签: c++ string algorithm loops max