c语言:输入一行字符,统计出其中单词的个数,个单词之间用空格分隔,空格数可以是多个。 输入案例1

c语言:输入一行字符,统计出其中单词的个数,个单词之间用空格分隔,空格数可以是多个。

输入案例1:
boy空格John空格空格空格language
输入案例2:
空格 boy空格John空格空格空格language
输入案例3:
空格 boy空格John空格空格空格language空格

#include<stdio.h>
int main()
{
char str[1000];
int i=0,count=0;
gets(str);
    if(str[0]!=' ') count=1;
for(i=1;str[i]!='\0';i++)
{
if(str[i-1]==' '&& str[i]!=' ')
count++;
}
printf("%d\n",count);
return 0;
}

追问

我们还没学[],下节课才学。
getchar是接触过

追答

你学过数组,这题咋做啊

追问

如果是字母,x=1
如果是空格,x=0

如果是“01”就是一个单词。
这代码该怎么写?

追答#include<stdio.h>
int main()
{
    char a,b;
int count=0;
a = getchar();
if(a != ' ') count=1;
for(;(b=getchar())!='\n';a = b)
{
if(a ==' ' && b!=' ')
count++;
}
printf("%d\n",count);
    return 0;
}

这方法被我想到了,我也是醉了

追问

。。不知道啊,这是第6章的题目,数组是第7章😂

好吧,数组就数组吧

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-12-09
/*统计一个字符串单词的个数,单词间以一到多个空格分隔。*/
#include<stdio.h>
main()
{char a[100];
int i,s=0;
printf("请输入字符串:\n");
gets(a);
if(a[0]!=' ')
s+=1;
for(i=1;a[i]!='\0';i++)
{ if(a[i-1]==' ' && a[i]!=' ')
s++;
}
printf("此字符串的单词有%d个\n",s);
}

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网