头歌c语言统计最长单词长度
时间: 2024-11-20 18:43:02 浏览: 46
在C语言中,要统计输入字符串中最长单词的长度,你可以采用分隔单词、遍历并记录最大长度的方式来实现。以下是简单的步骤:
1. 定义一个函数接收字符串作为输入参数。
2. 使用`strtok`函数将字符串按空格分割成单词数组。这个函数会返回每个单词的首地址,并在原始字符串中插入分隔符(这里是空字符'\0'),直到遇到字符串结束为止。
3. 遍历单词数组,对每个单词计算长度。可以使用`strlen`函数获取单词的字节数(考虑到可能包含非ASCII字符)。
4. 比较当前单词的长度和之前记录的最大长度,如果当前单词更长,则更新最大长度。
5. 循环结束后,最大长度即为输入字符串中最长单词的长度。
下面是一个简化的示例代码片段:
```c
#include <stdio.h>
#include <string.h>
// 函数用来找到并返回最长单词长度
int findLongestWordLength(const char* str) {
const char *token;
int maxLength = 0;
token = strtok(str, " "); // 分割单词
while (token != NULL) {
int wordLength = strlen(token);
if (wordLength > maxLength) {
maxLength = wordLength;
}
token = strtok(NULL, " "); // 继续查找下一个单词
}
return maxLength;
}
int main() {
char input[100];
printf("请输入一段英文句子:");
fgets(input, sizeof(input), stdin); // 读取用户输入
input[strcspn(input, "\n")] = '\0'; // 移除行尾换行符
int longestLength = findLongestWordLength(input);
printf("输入字符串中最长单词的长度为:%d\n", longestLength);
return 0;
}
```
阅读全文