#includecstring.h>#include<stdio.h>#define N 80 int fun(char *s) void main() FILE *wf; char line[N]; int num=0; printf("输入一个字符串:\n") gets(line); num=fun(line); printf("单词的数量是:%d\n\n“,num); wf=fopen("out.dat""w"); //必创建新的文本文件,且只能写入数据 fprintf(wf "%d" fun("a big car"));//文件指针 格式控制参敢,输出参数列表 fclose(wf); 川关闭文件 在此程序中,编写函数fun,该函数的功能是统计-行字符串中单词的个数,作为函数值返回。字符串在主函数中输入,规定所有单词由小写字母组成,单词之间有若干个空格隔开,一行的开始没有空格。 请勿改动main函数和其它函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。 两个结果如图(注outdat选用一种方式打开并截图)
时间: 2024-02-20 17:58:49 浏览: 101
#包括stdio.h int main() char s81,c; int i,number=0,word=
这段代码中需要编写一个函数 `fun`,该函数的功能是统计一行字符串中单词的数量,规定所有单词由小写字母组成,单词之间有若干个空格隔开,一行的开始没有空格。下面是该函数的代码实现:
```c
int fun(char *s) {
int num = 0;
int i = 0;
while (s[i] != '\0') {
if (s[i] != ' ' && (i == 0 || s[i-1] == ' ')) {
num++;
}
i++;
}
return num;
}
```
该函数使用了一个循环来遍历整个字符串,如果当前字符不是空格且上一个字符是空格(或者 i 等于 0),则说明找到了一个新单词,单词数量加一。最后返回单词数量。请注意,在 `main` 函数中调用该函数时,应该传入的是用户输入的字符串,而不是固定的字符串 `"a big car"`。
阅读全文