计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)
时间: 2024-04-11 09:26:42 浏览: 181
可以使用以下的Python代码来计算字符串中最后一个单词的长度:
```
s = input().strip() # 输入字符串并去除首尾空格
last_word = s.split()[-1] # 将字符串按空格分割,并取最后一个单词
print(len(last_word)) # 输出最后一个单词的长度
```
这段代码首先使用`input()`函数获取用户输入的字符串,然后使用`strip()`方法去除字符串首尾的空格。接着,使用`split()`方法将字符串按空格分割成一个列表,然后取列表中的最后一个元素,即最后一个单词。最后,使用`len()`函数计算最后一个单词的长度,并输出结果。
相关问题
计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾)C语言
在C语言中,你可以通过以下几个步骤计算字符串最后一个单词的长度:
1. 首先,你需要定义一个指针变量`str`指向输入的字符串,并初始化它。
2. 创建一个临时指针`word_end`用于追踪单词结束的位置。初始值设为`str`,表示查找从第一个字符开始。
3. 使用`while`循环遍历字符串,直到找到空格或者到达字符串的末尾:
- 检查当前字符是否为空格。如果是,则更新`word_end`到前一个非空格位置,因为这将是当前单词的结尾。
- 如果不是空格,继续向前移动`word_end`。
4. 当遇到空格后,将`word_end`加一,因为这个位置后的字符属于下一个单词。
5. 当`word_end`超过`str + strlen(str) - 1`时(即接近字符串末尾),跳出循环,此时`word_end`就是单词的最后一个字符位置。
6. 最后,计算`word_end`与`str`之间的距离(减去1,因为我们不包括字符串末尾的空格)即可得到最后一个单词的长度。
以下是一个简单的函数实现示例:
```c
#include <stdio.h>
#include <string.h>
size_t last_word_length(char *str) {
size_t len = strlen(str);
char *word_end = str;
while (word_end < str + len && *word_end != ' ') {
word_end++;
}
if (*word_end == '\0') { // 没有空格的情况,整个字符串视为一个单词
return len;
} else {
return word_end - 1; // 减去空格和结束符
}
}
int main() {
char input[5000];
printf("请输入一个不超过5000字节的字符串: ");
fgets(input, sizeof(input), stdin); // 注意这里读取时需要去掉换行符
input[strlen(input) - 1] = '\0'; // 去掉fgets添加的换行符
size_t length = last_word_length(input);
printf("最后一个单词的长度是: %zu\n", length);
return 0;
}
```
描述 计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾) 输入描述: 输入一行,代表要计算的字符串,非空,长度小于5000。 输出描述: 输出一个整数,表示输入字符串最后一个单词的长度。
好的,这是一个比较简单的字符串处理问题。可以使用字符串的 split() 方法进行分割,将单词分成一个列表,然后取最后一个单词,再计算其长度即可。以下是代码实现:
```
input_str = input().strip()
word_list = input_str.split()
last_word = word_list[-1]
print(len(last_word))
```
如果输入的字符串没有空格,则输出整个字符串的长度。
阅读全文