题目描述:
计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。
注:字符串末尾不以空格作为结尾
输入描述:
输入一行,代表要计算要的字符串,非空,长度小于5000。
输出描述
输出一个整数,表示输入字符串最后一个单词的长度。
思路:
从末尾向前遍历数组,遇到空格结束,用计数器 count 记录长度
我的代码:
#include <stdio.h>
#include <string.h>
//day-1 计算字符串最后一个字符的长度
int main()
{
char str[5000]; // 定义一个字符数组,用于存储输入的字符串
fgets(str, 5000, stdin);
int len = strlen(str); // 计算字符串的长度
int count = 0; // 定义一个计数器,用于记录最后一个单词的长度
for (int i = len - 1 ; i >= 0 ; i--) // 从字符串的末尾开始遍历
{
if (str[i] == ' ') // 如果当前字符是空格
{
if (count > 0) // 如果计数器大于零,说明已经找到了最后一个单词,退出循环
break;
}
else // 否则,如果当前字符不是空格,则计数器加一
count++;
}
printf("%d\n", count); // 输出最后一个单词的长度
return 0;
}
输出结果:
现在还只会C语言,,