OJ题:字符串最后一个单词的长度

简介: 题目描述计算字符串最后一个单词的长度,单词以空格隔开。输入描述:一行字符串,非空,长度小于5000。输出描述:整数N,最后一个单词的长度。输入例子:hello world输出例子:5程序如下:#include #include #include ...

题目描述

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


输入描述:
一行字符串,非空,长度小于5000。
输出描述:
整数N,最后一个单词的长度。
输入例子:
hello world
输出例子:
5
程序如下:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void)
{
    char str[5000] = {0};
    int count = 0 ,start;
    gets(str);
    const int str_length =  strlen(str);
    start = str_length - 1 ;
    while(start >= 0)
    {
        if(str[start] == ' ')
            break ;
        count++ ;
        start-- ;
    }
    printf("%d",count);
    return 0 ;
}
题目陷阱,肯定会有同学用scanf()去输入字符串,这里应当使用gets();gets() 和scanf()的区别在于输入的字符串是否中间有空格:对于前者,只有遇到"\n"时才停止输入,而对于后者,出现"\n"或空格都停止输入。



目录
相关文章
|
5月前
leetcode-434:字符串中的单词数
leetcode-434:字符串中的单词数
42 1
【Leetcode -415.字符串相加 - 434.字符串中的单词数】
【Leetcode -415.字符串相加 - 434.字符串中的单词数】
30 0
|
索引
【LeetCode】917. 仅仅反转字母、387. 字符串中的第一个唯一字符
目录 917. 仅仅反转字母 387. 字符串中的第一个唯一字符
44 0
|
13天前
Leetcode(最后一个单词长度)
这篇文章介绍了两种解决LeetCode第58题的方法,即计算给定字符串中最后一个单词的长度,方法包括翻转字符串和逆向遍历统计。
14 0
|
2月前
|
算法
LeetCode第58题最后一个单词的长度
LeetCode第58题"最后一个单词的长度"的解题方法,通过从字符串末尾向前遍历并计数非空格字符,直接得出最后一个单词的长度。
LeetCode第58题最后一个单词的长度
|
5月前
【力扣】58. 最后一个单词的长度
【力扣】58. 最后一个单词的长度
|
5月前
|
Java
java字符串练习题6、最后一个单词的长度
java字符串练习题6、最后一个单词的长度
43 0
leetcode:58. 最后一个单词的长度
逆向求,先设置一个字符串下标index,定位到最后一个单词的最后一个字符。再一个设置长度变量n,从后向前遍历,直到遇到“空格”或者下标index小于0停止遍历,每次前移n++,最后返回长度变量n 关键1:如何定位到最后一个单词的最后一个字符?
45 0
|
算法 安全 Swift
LeetCode - #58 最后一个单词的长度
不积跬步,无以至千里;不积小流,无以成江海,Swift社区 伴你前行。如果大家有建议和意见欢迎在文末留言,我们会尽力满足大家的需求。
leetcode:58.最后一个单词的长度
给定一个仅包含大小写字母和空格 ’ ’ 的字符串,返回其最后一个单词的长度。
57 0