c语言输出一行字符中最长的单词
时间: 2023-07-19 16:36:49 浏览: 102
输出最长单词.c
可以使用以下代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100]; // 用于存储输入的字符串
char longest_word[100]; // 用于存储最长的单词
int max_len = 0; // 用于存储最长单词的长度
int len = 0; // 当前单词的长度
printf("请输入一行字符: ");
fgets(str, 100, stdin); // 从标准输入读取一行字符串
// 遍历每个字符,计算每个单词的长度
for (int i = 0; i <= strlen(str); i++) {
if (str[i] == ' ' || str[i] == '\0') { // 如果遇到空格或者字符串结束符,表示当前单词结束
if (len > max_len) { // 如果当前单词比最长单词还长,更新最长单词长度和内容
max_len = len;
strncpy(longest_word, &str[i - len], len);
}
len = 0; // 重置当前单词的长度
} else {
len++; // 如果不是空格或者字符串结束符,当前单词长度加一
}
}
longest_word[max_len] = '\0'; // 在最长单词后面添加字符串结束符
printf("最长的单词是: %s, 长度为: %d\n", longest_word, max_len);
return 0;
}
```
这个程序会从标准输入读取一行字符串,然后遍历每个字符,计算每个单词的长度。如果当前单词的长度比之前的最长单词还长,就更新最长单词的长度和内容。最后输出最长的单词和长度。
阅读全文