问题标题: 酷町堂:为什么4853 30分

0
0
已解决
朱家烨
朱家烨
资深守护
资深守护
#include <iostream>
#include <string>
#include <algorithm> 
using namespace std;
string s[1100];
int main(){
    int n,maxn=0;
    cin>>n;
    getline(cin,s[1]);
    for(int i=1;i<=n;i++) cin>>s[i];
    for(int i=1;i<=n;i++) {
    cout<<s[i]<<endl;
    for(int i=1;i<s[i].size();i++){
        if(s[i].size()>maxn){
            maxn=s[i].size();
        }
    }
}
    cout<<maxn;
    return 0;
}

 


0
已采纳
曹砚青
曹砚青
中级光能
中级光能

所以,你想说什么?

曹砚青在2020-08-17 17:07:40追加了内容

哦对了,给你

    字符串定义 s;
    整形定义 n,maxn=-0x3f3f3f3f;
    输入>>n;
    getchar();
    循环(int i=1;i<=n;i++)
    {
        getline(cin,s);
        输出<<s<<endl;
        整形定义 len=s.size();
        如果(len>maxn)
        {
            maxn=len;    
        }
        
    }
    输出<<maxn;

还有头文件:

#include<iostream>
#include<string>
#include<cstdio>

0
0
0
陈振轩
陈振轩
高级光能
高级光能

???看到代码我懵了,为什么要加

for(int i=1;i<s[i].size();i++){

这一行代码?从1到s[i].size()-1遍历吗?外面已经有一个1~n的循环了啊孩子,把这一层for去掉,即可AC

0
丁博扬
丁博扬
中级天翼
中级天翼
  • 循环(int i=1;i<=n;i++){
  • 带空格输入(cin,s);
  • 输出<<s<<endl;
  • 整形定义 len=s的长度();
  • maxn=max(maxn,len);
  • 如果(s的长度>maxn){
  • maxn=s的长度;
  • }
  • }
  • 别忘了吃掉换行,还有定义maxn
  • 望采纳,谢谢
0
黄子扬
黄子扬
初级天翼
初级天翼
 for(int i=1;i<s[i].size();i++)

6666666666666666

0
张恩泽
张恩泽
高级天翼
高级天翼
for(int i=1;i<s[i].size();i++){//i因从0开始
        if(s[i].size()>maxn){
            maxn=s[i].size();
        }
    }
}

这个i从0开始循环

0
李素妍
李素妍
新手天翼
新手天翼

for(int i=1;i<s[i].size();i++){

 

if(s[i].size()>maxn){

 

maxn=s[i].size();

 

}

 

}

改成

if(s[i].size()>maxn){

maxn=s[i].size();

}

0
我要回答