统计字符串中最长的单词 分数 10 作者 王才善 单位 兰州交通大学 输入一个字符串,统计其中最长的单词并输出。 #include <stdio.h> int findLongest( char str[] ); int main() { char sArr[100] = { 0 }; int loc, i; gets(sArr); loc = ; for (i = loc; sArr[i] != ' ' && sArr[i] != '\0'; i++) putchar(sArr[i]); return 0; } int findLongest( char str[] ) { int i = 0, Loc = 0, len = 0, lLoc = 0; while (str[i] != '\0') { while (str[i] == ' ') i++; lLoc = i; while (str[i] != ' ' && str[i] != '\0') ; if (i -lLoc > len) { ; Loc = lLoc; } } ; } ###输入样例 This is a C Program ###输出样例 Program 补全代码
时间: 2024-02-14 20:07:41 浏览: 133
补全后的代码如下:
```c
#include <stdio.h>
int findLongest(char str[]);
int main() {
char sArr[100] = { 0 };
int loc, i;
gets(sArr);
loc = findLongest(sArr);
for (i = loc; sArr[i] != ' ' && sArr[i] != '\0'; i++)
putchar(sArr[i]);
return 0;
}
int findLongest(char str[]) {
int i = 0, Loc = 0, len = 0, lLoc = 0;
while (str[i] != '\0') {
while (str[i] == ' ')
i++;
lLoc = i;
while (str[i] != ' ' && str[i] != '\0')
i++;
if (i - lLoc > len) {
len = i - lLoc;
Loc = lLoc;
}
}
return Loc;
}
```
在补全代码中,我们在 `main` 函数中调用了 `findLongest` 函数来查找最长的单词,并且将返回的位置赋值给 `loc` 变量,然后从 `loc` 开始输出最长的单词。在 `findLongest` 函数中,我们使用了两个指针 `i` 和 `lLoc` 来遍历字符串,同时用 `Loc` 和 `len` 变量来记录最长单词的位置和长度。
阅读全文