用c语言写一个函数,输入一行字符,将此字符串中最长的单词输出。最后将代码写给我。
时间: 2023-12-18 21:56:55 浏览: 112
C语言基础-字符串操作之最后一个单词的长度.zip
以下是用C语言实现的函数,输入一行字符,输出最长的单词:
```c
#include <stdio.h>
#include <string.h>
void findLongestWord(char* str) {
int len = strlen(str);
int max_len = 0, start_idx = -1, end_idx = -1;
int i = 0;
while (i < len) {
if (str[i] >= 'a' && str[i] <= 'z') {
int j = i;
while (j < len && str[j] >= 'a' && str[j] <= 'z') {
j++;
}
int word_len = j - i;
if (word_len > max_len) {
max_len = word_len;
start_idx = i;
end_idx = j;
}
i = j;
} else {
i++;
}
}
if (start_idx != -1 && end_idx != -1) {
printf("The longest word is: ");
for (int i = start_idx; i < end_idx; i++) {
printf("%c", str[i]);
}
printf("\n");
} else {
printf("No word found.\n");
}
}
int main() {
char str[100];
printf("Please input a string: ");
fgets(str, 100, stdin);
findLongestWord(str);
return 0;
}
```
输入一行字符后,该程序会输出该行中最长的单词。注意,该程序只会识别由小写字母组成的单词,并且单词之间不能有任何标点符号或空格等其他字符。
阅读全文