问题标题: 酷町堂:2712 第二个单词的长度

0
0

0
已采纳
贾文卓
贾文卓
高级光能
高级光能

这道题目没有那么难,可以利用C++输入的特性(即遇到空格就截断)轻松完成这道题目。

核心代码:

cin >> s >> s;

这是输入部分。经过这条语句,字符串s存储的就是第二个单词了。

输出你应该会。

0
0
周俊豪
周俊豪
高级光能
高级光能

getline(cin,a);
    s=a.size();
    for(int i=0;i<=s-1;i++){
        if(a[i]==' '){
            j=i;
            a.erase(j,1);
            break;
        }
    }
    for(int i=0;i<=s-1;i++){
        if(a[i]==' '){
            l=i-j;
            break;
        }
    }
    b=a.substr(j,l);
    o=b.size();
    cout<<b<<" ";
    cout<<o;

 

注意:定义字符串a,b。

定义整形变量s,j,l,o;

别忘了#include<string>的头文件!

求采纳!

周俊豪在2018-07-20 16:19:25追加了内容

思路:先输入字符串a;

整形s为a的长度;

第一个循环为求第二个单词的出现的长度;

用整形变量j来储存,为后面的截取函数做铺垫;

之后再删除j后面的空格;

删除出第一个空格后跳出循环,以免重复保存长度;

第二个循环用来为后面的截取求出第二个空格离第一个空格的长度;

b=a.substr(j,i);是截取j后面的i个字符;

整形o是求第二个单词的长度;

最后再输出;

求大佬采纳!

 

我要回答