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;
}追问
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;
}
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”就是一个单词。
这代码该怎么写?
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);
}
#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);
}