请教首尾可能为空时查询单词的问题
我希望可以做出一个输入字符串统计单词数量的程序。。。但是问题好多啊。这个程序正常使用没有问题。。。即使单词之间空格数不是1都行。但是问题在于万一有人就只输入空格键或者直接回车键出的也是一怎么办?而且末尾字符不能是空格不然会结果会加一,我希望不管首尾是否为空格都能正确计算出单词的数量。但目前做的其实只能统计不连续的空格数量并输出。求指导!
#include<stdio.h>
#include<string.h>
#define A 888
main()
{
int a,b,c=1,d,e=0,f,g;
char one[A];
gets (one);
a=strlen(one);
for (b=1;b<a;
b++){
if (one[b]==' '&&one[b-1]!=' '){
c++;}}
printf("%d",c);
}
还有个问题是我试了下当末尾字符为空格时让结果c-1,结果完全无效。。。我的写法是这样的,请问为什么不起作用?
#include<stdio.h>
#include<string.h>
#define A 888
main()
{
int a,b,c=1,d,e=0,f,g;
char one[A];
gets (one);
a=strlen(one);
for (b=1;b<a;
b++){
if (one[b]==' '&&one[b-1]!=' '){
c++;}}
if (one[a]==' '){c=c-1;}
printf("%d",c);
}
[此贴子已经被作者于2016-11-13 19:23编辑过]