用一个函数来实现一行字符串中最长的单词输出。此行字符串从主函数 传递给该函数把两个函数分别放在两个程序文件中,作为两个文件进行编译、链接 和运行。C语言
时间: 2024-05-09 13:14:31 浏览: 64
下面是实现该功能的函数代码:
```c
#include <stdio.h>
#include <string.h>
void longest_word(char *str) {
int len = strlen(str);
int start = 0, end = 0, max_len = 0;
int i = 0;
while (i < len) {
while (i < len && str[i] == ' ') {
i++;
}
start = i;
while (i < len && str[i] != ' ') {
i++;
}
end = i;
if (end - start > max_len) {
max_len = end - start;
}
}
printf("最长的单词是:");
for (int j = 0; j < max_len; j++) {
printf("%c", str[start + j]);
}
printf("\n");
}
```
下面是主函数代码:
```c
#include <stdio.h>
void longest_word(char *str);
int main() {
char str[] = "Hello world, this is a test.";
longest_word(str);
return 0;
}
```
将上述两段代码分别保存为 `main.c` 和 `longest_word.c`,然后在命令行中执行以下命令进行编译和链接:
```
gcc -c longest_word.c
gcc -c main.c
gcc -o main longest_word.o main.o
```
最后执行 `./main` 即可运行程序,输出结果为:
```
最长的单词是:Hello
```
阅读全文