計蒜課題庫——最後一個單詞的長度 【字符串處理】

題目:

給定由大寫,小寫字母和空格組成的字符串,返回 最後 一個單詞的長度。

如果輸入中不存在單詞,返回 00

注意:

“單詞”是指不包含空格符號的字符串

例如:

對於字符串"hello World"(不帶引號), 那麼返回的結果是 55

對於字符串"abc abc "(不帶引號),那麼返回的結果就是 33

輸入格式

輸入僅一行,爲字符串 ss(長度不超過 1000010000)。

輸出格式

輸出 ss 中最後一個單詞的長度。

樣例輸入1

Today is a nice day

樣例輸出1

3

樣例輸入2

The quick brown fox jumps over the lazy dog   

樣例輸出2

3

用到的知識點:1、讀取一行包含空格的字符串 2、逐位判斷字符串

分析:讀取一行包含空格的字符串需要getline(cin,s)函數. 首先判斷字符串中有沒有大小寫字母,沒有的話輸出0,有的話從字符串末尾讀起,(坑點:有的字符串末尾是空格),遇到字母開始計數,直到再遇到空格停止計數。

#include<iostream>
#include<cstring>
using namespace std;
int main()
{
	string s;
	int num=0,flag=0;
	getline(cin,s);
	for(int j=0;j<s.length();j++)
	{
		if((s[j]>64&&s[j]<91)||(s[j]>96&&s[j]<123))
		{
			flag=1;
			break;
		}
	} 
	if(flag==0)
	{
		cout<<0;
		return 0;
	}
	else
	{
	
	int i=0;
	for( i=s.length()-1;s[i]==' ';i--)
	{
	}
		for(;s[i]!=' ';i--)
	{
		num++;
	}
	-
	cout<<num<<endl;
	}
	return 0;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章