注册 登录
编程论坛 新人交流区

[求助]C语言循环中的一点小问题!

小白II 发布于 2007-10-23 19:52, 311 次点击

#include <stdio.h>
void main()
{ int a,num,kongge,qita;
char i;

a=0;
num=0;
kongge=0;
qita=0;
printf("请输入字符序列:");
fflush(stdin);
while(1)
{i=getchar();

if(i>='a'&&i<='z'||i>='A'&&i<='Z')
{a++;
continue;}
else if(i>='0'&&i<='9')
{num++;
continue;}
else if(i==32)
{kongge++;
continue;
}
// if(i!=32&&!(i>='a'&&i<='z'||i>='A'&&i<='Z')&&!(i>='0'&&i<='9'))
// {qita++;
// continue;

// }
if(i='\n')
break;

};

printf("\n这中字符中共有字母%d个\n数字%d个\n空格%d个\n其他字符%d个\n",a,num,kongge,qita);
}


这是用来计算用户输入一串字符后,把他输入的各种符号数量打印出来,用来算数字,字母和空格都没问题,可是其它的字符算不出来有多少个,
注销的是我想的写法,可是不行,有人能告诉我,我错在那里了吗,怎么改好呢?

6 回复
#2
小白II2007-10-23 20:03
有人能帮帮我吗,我是新手,想了一下午了!!!
#3
fengjianppt2007-10-23 20:08
什么东西啊!太难了
#4
小白II2007-10-23 20:10

我才学了一个来星期,一定不难的,请高手们帮帮忙,谢谢了!

#5
yuwei50002007-10-23 21:49
while(1) 那是什么意思啊,我不明白~~
是不是 1 代表真, 0 代表假
一般while()里面用boolean 比较好一点~~~!
#6
dodober2007-10-23 22:27

if(i!=32&&!(i>='a'&&i<='z'||i>='A'&&i<='Z')&&!(i>='0'&&i<='9'))
{
if(i=='\n')
break;
qita++;
continue;
}
两个问题,1,==,
2,判回车的位置

[此贴子已经被作者于2007-10-23 22:29:55编辑过]

#7
dodober2007-10-23 22:28
刚才写了详细说明,可是好像没发表成功,呵呵,
1