例题:s是全部由小写字母字符和空格字符组成的字符串,由len传入字符串的长度,请补充fun函数,该函数的功能是:统计字符串s中的单词数,结果由变量len传回。每个单词之间都由空格隔开,并且字符串s开始不存在空格。

​例如,s=“welcome welcome”,结果为:len=2。​​​​请勿改动主函数main与其它函数中的任何内容,仅在fun函数的横线上填写所需的若干表达式或语句。​

代码如下:

#include<stdio.h>
#define M 100
void fun(char*s,int*len)
{
int j,n=0;
for(j=0;j<*len;j++)
if(s[j]>='a'&&s[j]<'z'&&s[j+1]==' '||s[j+1]=='\0')
n++;
*len=n;
}
main()
{
char s[M];
int len=0;
printf("Enter a string:\n");
gets(s);
while(s[len])
len++;
fun(s,&len);
printf("The lenber of word is:%d\n\n",len);
}

输出运行窗口如下:

C语言编程>第十六周 ⑦ s是全部由小写字母字符和空格字符组成的字符串,由len传入字符串的长度,请补充fun函数,该函数的功能是:统计字符串s中的单词数,结果由变量len传回。_字符串


本周其他练习

​​C语言程序设计专栏​​

​​C语言编程>第十六周 ① 给定程序的功能是求1/4的圆周长。函数通过形参得到圆的直径,函数返回1/4的圆周长(圆周长公式为:L=Πd,在程序中定义的变量名要与公式的变量相同)。​​

​​C语言编程>第十六周 ② 函数fun的功能是:统计长整数test的各位上出现数字5、6、7的次数,并通过外部(全局)变量sum5、sum6、sum7返回主函数。​​

​​C语言编程>第十六周 ③ 请补充main函数,该函数的功能是:从键盘输入一组整数,使用条件表达式找出最大的整数。当输入的整数为-1时结束。​​

​​C语言编程>第十六周 ④ 请补充fun函数,该函数的功能是将字符串str中的小写字母都改为对应的大写字母,其它字符不变。​​

​​C语言编程>第十六周 ⑤ 请补充fun函数,该函数的功能是:依次取出字符串中所有大写字母,形成新的字符串,并取代原字符串。​​

​​C语言编程>第十六周 ⑥ 下列给定程序中,函数fun的功能是:通过某种方式实现两个变量值的交换,规定不允许增加语句或表达式。​​

​​C语言编程>第十六周 ⑦ s是全部由小写字母字符和空格字符组成的字符串,由len传入字符串的长度,请补充fun函数,该函数的功能是:统计字符串s中的单词数,结果由变量len传回。​​

​​C语言编程>第十六周 ⑧ S是一个由数字和字母字符串组成的字符串,由变量len传入字符串长度。请补充fun函数,该函数的功能是把字符串s中的数字字符转换成数字并存放到整型数组a中,函数返回数组a的长度。​​

越努力越幸运!​​
​​加油,奥力给!!!