华为机试HJ1:字符串最后一个单词的长度

简介: 华为机试HJ1:字符串最后一个单词的长度

题目描述:

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

输入描述:

输入一行,代表要计算的字符串,非空,长度小于5000。

输出描述:

输出一个整数,表示输入字符串最后一个单词的长度。

示例:

输入:hello nowcoder

输出:8

解题思路:

既然要输出最后一个单词,那就倒着来统计,一旦遇到空格则完成统计;若只有一个单词,还要加上判断是否完成了整个字符串的遍历,如果全遍历完都没碰到空格,那就只有一个单词。

测试代码:

#include <iostream>
#include <cstring>
using namespace std;
int main()
{
    char s[5001];
    // 获取字符串
    cin.getline(s, 5001);
    int number=0;
    int snumber=strlen(s);
    // 字符串倒序统计
    for(int i=snumber-1;s[i]!=' ';--i)
    {
        number++;
        // 若只有一个单词,需要判断下
        if(i==0)
            break;
    }
    cout<<number<<endl;
    return 0;
}


相关文章
|
4月前
|
索引
《华为机试》——查找两个字符串a,b中的最长公共子串
《华为机试》——查找两个字符串a,b中的最长公共子串
|
11月前
华为机试HJ106:字符逆序
华为机试HJ106:字符逆序
107 1
|
11月前
华为机试HJ59:找出字符串中第一个只出现一次的字符
华为机试HJ59:找出字符串中第一个只出现一次的字符
|
11月前
华为机试HJ65:查找两个字符串a,b中的最长公共子串
华为机试HJ65:查找两个字符串a,b中的最长公共子串
|
11月前
|
容器
华为机试HJ92:在字符串中找出连续最长的数字串
华为机试HJ92:在字符串中找出连续最长的数字串
|
11月前
华为机试HJ81:字符串字符匹配
华为机试HJ81:字符串字符匹配
|
11月前
华为机试HJ46:截取字符串
华为机试HJ46:截取字符串
|
11月前
华为机试HJ4:字符串分隔
华为机试HJ4:字符串分隔
|
11月前
华为机试HJ84:统计大写字母个数
华为机试HJ84:统计大写字母个数
|
11月前
|
算法 数据库
华为机试HJ71:字符串通配符
华为机试HJ71:字符串通配符