用2022版visualstudioC语言写一个函数,输入一行字符,将此字符串中最长的单词输出
时间: 2024-06-13 19:07:49 浏览: 145
以下是用C语言实现输入一行字符,输出此字符串中最长的单词的函数:
```c
#include <stdio.h>
#include <string.h>
void findLongestWord(char str[]) {
int i, len, max_len = 0, start = 0, end = 0;
len = strlen(str);
for (i = 0; i < len; i++) {
if (str[i] == ' ') {
if (i - start > max_len) {
max_len = i - start;
end = i - 1;
}
start = i + 1;
}
}
if (i - start > max_len) {
max_len = i - start;
end = i - 1;
}
printf("The longest word is: ");
for (i = end - max_len + 1; i <= end; i++) {
printf("%c", str[i]);
}
printf("\n");
}
```
函数中使用了一个循环来遍历字符串中的每个字符,当遇到空格时,就判断前面的单词长度是否大于之前的最大长度,如果是,则更新最大长度和最长单词的起始和结束位置。最后,根据最长单词的起始和结束位置输出最长单词。
调用该函数的代码如下:
```c
int main() {
char str[100];
printf("Please enter a string: ");
fgets(str, 100, stdin);
findLongestWord(str);
return 0;
}
```
用户输入一个字符串后,调用`findLongestWord`函数来输出最长单词。
阅读全文