1.题目
1.1 描述
计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)
1.2 输入描述
输入一行,代表要计算的字符串,非空,长度小于5000。
1.3 输出描述
输出一个整数,表示输入字符串最后一个单词的长度。
示例1
输入:hello nowcoder
输出:8
说明:最后一个单词为nowcoder,长度为8
2.题解
2.1 思路
首先,定义一个字符串line用来存储输入。然后,使用getline函数读取cin的字符串到line中。使用rhind函数就可以找到最后一个空格的位置,之后使用line.size() - pos - 1就可以了。
2.2 代码
#include <iostream>
#include <string>
using namespace std;
int main() {
string line;
//不要使用cin>>line,因为它遇到空格就结束了
//while(cin>>line)
while (getline(cin, line)) { // 注意 while 处理多个 case
size_t pos = line.rfind(' ');
cout<<line.size() - pos - 1 << endl;
}
return 0;
}