用c语言写一个函数,输入一行字符,将此字符串中最长的单词输出
时间: 2023-12-18 16:16:03 浏览: 113
C语言程序设计-将主函数中输入的字符串反序存放;例如:输入字符串“abcdefg”,则应输出“gfedcba”;.c
5星 · 资源好评率100%
好的,以下是用C语言编写的函数,可以实现输入一行字符,将此字符串中最长的单词输出的功能。
```c
#include <stdio.h>
#include <string.h>
void findLongestWord(char str[]) {
char longestWord[100];
char currentWord[100];
int i, j, currentLen, longestLen;
int len = strlen(str);
longestLen = 0;
currentLen = 0;
for (i = 0; i < len; i++) {
if (str[i] != ' ') {
currentWord[currentLen] = str[i];
currentLen++;
} else {
currentWord[currentLen] = '\0';
if (currentLen > longestLen) {
longestLen = currentLen;
strcpy(longestWord, currentWord);
}
currentLen = 0;
}
}
currentWord[currentLen] = '\0';
if (currentLen > longestLen) {
longestLen = currentLen;
strcpy(longestWord, currentWord);
}
printf("最长的单词是:%s\n", longestWord);
}
```
该函数的参数是一个字符数组,表示输入的一行字符。函数内部通过遍历整个字符数组,将其中的单词一个一个提取出来,并比较每个单词的长度,最终输出最长的单词。
注意:该函数假设输入的字符只包含字母和空格,没有标点符号。如果输入字符串中包含标点符号,需要在函数内部添加相应的处理逻辑。
阅读全文