C语言写一个函数,输入一行字符,将此字符串中最长的单词输出。
时间: 2023-06-07 17:08:16 浏览: 133
好的,这个问题属于编程问题,我可以回答。
以下是C语言实现:
```c
#include <stdio.h>
#include <string.h>
void findLongestWord(char sentence[]){
int i, j, length, maxLength = 0, start = 0;
// 遍历字符串中的每一个单词
for(i = 0; sentence[i] != '\0'; i++){
// 跳过空格
while(sentence[i] == ' ' && sentence[i] != '\0') {
i++;
}
// 找到单词的起始位置
if(sentence[i] != ' '){
j = i;
length = 0;
// 计算单词的长度
while(sentence[j] != ' ' && sentence[j] != '\0'){
length++;
j++;
}
// 比较单词长度
if(length > maxLength){
maxLength = length;
start = i;
}
}
}
// 输出最长的单词
printf("最长单词为:");
for(i = start; i < start + maxLength; i++){
printf("%c", sentence[i]);
}
}
int main(){
char sentence[100];
printf("请输入一行字符:\n");
gets(sentence);
findLongestWord(sentence);
return 0;
}
```
以上代码实现了一个从用户输入中找到最长单词的函数。函数中采用了双重循环来依次扫描每一个单词并计算单词长度,然后比较长度以找到最长单词。
阅读全文