描述
计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)
输入描述:
输入一行,代表要计算的字符串,非空,长度小于5000。
输出描述:
输出一个整数,表示输入字符串最后一个单词的长度。
解决方案(1) 倒序查空格
#include <iostream>
#include <string>
using namespace std;
int main() {
string str;
while(getline(cin,str))
{ // 注意 while 处理多个 case
int size = str.length();
int count = 0;
for(int i =size-1;i>=0;i--)
{
if(str[i]==' ')
{
break;
}
count++;
}
cout<<count;
}
return 0;
}
解决方案(2) 正序查找最后一个空格,总长度-最后一个空格前的个数
#include <iostream>
#include <string>
using namespace std;
int main() {
string str;
while(getline(cin,str))
{ // 注意 while 处理多个 case
int count = str.length();
int pos = 0;
for(int i=0;i<count;i++)
{
if(str[i]==' ')
{
pos = i+1;
}
}
cout << count-pos;
}
return 0;
}