题解 | #字符串最后一个单词的长度#

字符串最后一个单词的长度

http://www.nowcoder.com/practice/8c949ea5f36f422594b306a2300315da

** 描述**
计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。
输入描述:
输入一行,代表要计算的字符串,非空,长度小于5000。
输出描述:
输出一个整数,表示输入字符串最后一个单词的长度。
示例1
输入:
hello nowcoder
输出:
8
说明:
最后一个单词为nowcoder,长度为8

一次性读入整行,找最后一个单词的长度

#include <iostream>
#include <string>
using namespace std;

int main (){
    string input, lastWord;
    getline(cin, input);  // 输入整行
    int len = input.size(); // 整行的长度
    for (int i = len - 1; i >= 0; --i) {
        if (input[i] == ' ') {
            lastWord = input.substr(i+1, len - 1); // 最后一个单词
            break;
        }
        if (i == 0) 
            lastWord = input;
    }
    cout << lastWord.size() << endl;
    return 0;
}

将每个单词逐个读入,最后一个的长度即为答案

#include <iostream>
#include <string>
using namespace std;

int main (){
    string lastWord;
    while (cin >> lastWord);  // 按空格分开 各个单词依次输入
    cout << lastWord.size() << endl; // 输出最后一个单词长度
    return 0;
}
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务