用C语言编写:输入一行字符以@作结束标志,分别统计其中英文字母、空格、数字和其他字符的个数。

#include<stdio.h>
main()
{
int w=0,k=0,n=0,z=0; //w为字母个数,k为空格个数,n为数字个数,z为其他字符个数
char ch;
scanf("%c",&ch);
while(ch!='@')
{
if(ch>='A'&&ch<='z')
w++;
else if(ch=' ')
k++;
else if(ch>='0'&&ch<='9')
n++;
else
z++;
}
printf("字母个数是%d, 空格个数是%d, 数字个数是%d, 其他字符个数是%d",w,k,n,z);
}
这个哪里出错了?

#include <stdio.h>
#include <stdlib.h>

void main()
{
int w=0,k=0,n=0,z=0; //w为字母个数,k为空格个数,n为数字个数,z为其他字符个数
char ch;
scanf("%c",&ch);
while(ch!='@')
{
if ( ch>='A'&&ch<='z' )
w++;
else if ( ch==' ' ) //这里你少写个‘=’号,以后要细心啊
k++;
else if ( ch>='0' && ch<='9' )
n++;
else
z++;

scanf("%c",&ch); //加这一句是让程序正常运行,能连续输入字符
}
printf("字母个数是%d, 空格个数是%d, 数字个数是%d, 其他字符个数是%d",w,k,n,z);

system("PAUSE");
}
温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

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