最后一个单词的长度用c语言写。
时间: 2024-10-22 12:08:39 浏览: 22
C语言入门-leetcode练习之第58题最后一个单词的长度.zip
在C语言中,获取字符串(即字符数组)最后一个单词的长度可以分为几个步骤:
1. 首先,你需要遍历字符串,找到空格或其他分隔符的位置来确定单词的边界。这是因为英文单词通常由空格分隔。
2. 当遇到第一个非空格字符时,开始计数,直到遇到下一个空格或字符串结束为止。
下面是一个简单的示例,假设我们有一个常量`str`存储了字符串:
```c
#include <stdio.h>
#include <string.h> // 引入strlen函数
int last_word_length(char *str) {
int length = 0; // 初始化长度为0
char prev_char = '\0'; // 前一个字符,用于检查连续的空格
for (char *p = str; *p != '\0'; p++) {
if (*p == ' ') { // 如果当前字符是空格
if (prev_char != ' ') { // 如果前一个字符不是空格,则累加到长度
length++;
}
prev_char = *p; // 更新前一个字符
} else { // 如果当前字符不是空格,也不是结束符
length++; // 直接累加长度
}
}
// 检查最后是否还有单词
if (prev_char != ' ') {
length++; // 如果最后不是空格,还要加上最后一个字符
}
return length;
}
// 测试函数
int main() {
const char *example_str = "This is a test string.";
int word_length = last_word_length(example_str);
printf("Length of the last word: %d\n", word_length);
return 0;
}
```
这个函数会返回最后一个单词的长度。注意,这只是一个基础版本,实际处理可能需要更复杂的逻辑,例如对于包含标点符号的输入进行适当的处理。
阅读全文