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

来源:互联网 发布:syslog 数据 编辑:程序博客网 时间:2024/06/06 19:54

题目描述

计算字符串最后一个单词的长度,单词以空格隔开。

输入描述:

一行字符串,非空,长度小于5000。

输出描述:

整数N,最后一个单词的长度。

示例


C++ code:

#include <iostream>#include "string.h"using namespace std;#define MAX 5000 int main() {     char str[MAX];     cin.getline(str, MAX);     int sum = strlen(str);     int index = sum;     char c = str[sum-1];     while (c!=' '&& index > 0)     {         index--;         c = str[index - 1];     }     cout << sum - index << endl;     return 0; }

代码思路

1、先确定输入的数据的长度sum
2、从最后一个元素逆序遍历,直到找到空格位置,并且保存索引值index。
3、那么最后一个单词的长度就是sum-index。


Tip:
如果只输入一个单词的话,没有找到空格怎么办?
while (c!=’ ‘&& index > 0)
添加了 index > 0的条件,完美解决~

BT version:(针对性比较强)

#include<iostream>using namespace std;int main(){    string str;    while(cin>>str);    cout<<str.length();    return 0;}