请编写一个函数fun,其功能是:统计一行字符串中单词的个数,作为函数值返回.规定单词由小写字母组成,单词之间允许若干个空格隔开.一行开始没有空格.
问题描述:
请编写一个函数fun,其功能是:统计一行字符串中单词的个数,作为函数值返回.规定单词由小写字母组成,单词之间允许若干个空格隔开.一行开始没有空格.
数字还有大写字母什么的不在统计范围里.
#include
#include
#define N 80
int fun( char *s)
{
}
main()
{ char line[N]; int num=0;
printf("Enter a string :\n"); gets(line);
num=fun( line );
printf("The number of word is :%d\n\n",num);
}
答
int fun( char *s)
{
int i=1,c=0;
while(s[i]) //第一个字符是空格也无所谓,具体自己理解,
{
if(a[i]==' '&&a[i-1]!=' ')
c++;
i++;
}
return c;
}。。。。不是只看空格,还要看是不是小写字母字符串中,看单词不是只看是否是空格隔开吗? 其实就是统计空格的个数就可以了,处理一下连续空格就可以 难道单词隔开不是用空格????? 句子开头是应该大写,但是前面会有空格的