从键盘输入一行字符(最长不超过80字符),
用函数编程统计其中单词(以空格作为间隔符的字符串)的个数。
例如How are you中单词个数为3。
要求:
(1)按如下函数原型进行编程:
int CountWords(char str[])
(2)在主函数中:
输入一行字符;
然后调用函数CountWords计算单词的个数;
最后打印计算结果。
**输入提示信息为:“Input a string:\n”
**输出格式为:“Number of words=%d\n”
代码1:
#include <stdio.h>
int CountWords(char str[]);
void main()
{
char str[80];
int num;
printf(“Input a string:\n”);
gets(str);//2
num=CountWords(str);//2
printf(“Number of words=%d\n”, num);//2
}
int CountWords(char str[])
{
int i, num;
if(str[0]!=’ ‘) //2
num=1;//1
else
num=0;//1
for (i=1; str[i]!=’\0’; i++)//4
{
if (str[i]!=’ ’ && str[i-1] == ’ ') //4
{
num++;//1
}
}
return num;//1
}
代码2:
#include<stdio.h>
#include<string.h>
int CountWords(char str[]);
int main(void)
{
char str[81];
printf("Input a string : \n");
gets(str);
printf("Number of words=%d\n",CountWords(str));
return 0;
}
int CountWords(char str[])
{
int i = 0, num ;
if(str[0]!=’ ')
num=1;
else
num=0;
while (str[i] != ‘\0’)
{
if (str[i] = ’ ’ && str[i + 1] != ’ ')
{
num += 1;
i++;
}
}
return (num);
}