分析:

1、我们需要先找出英文字母:而英文字母又分为大写(A-Z)和小写(a-z)

if(c>='A'&&c='a'&&c<='z')y++;

2、接着找出空格,接收到‘ ’

if(c==' ')k++;

3、接着再找出数字0-9

if(c='0')s++;

4、其他字符就能用else语句,(排除法)

5、我们还需要规定程序什么时候结束,因为我们输入的是字符,所以当接收到‘\n’时则结束

这里我们用while:

while((c=getchar())!='\n')

6、组合代码,同时注意if和else的组合:

#includeint main(){char c;int y=0,s=0,k=0,z=0;printf("请输入一串字符:");while((c=getchar())!='\n'){if(c='a'||c='z')y++;else if(c='0')s++;else if(c==' ')k++;elsez++;}printf("英文字母有%d个,数字有%d个,空格有%d个,其他字符有%d个",y,s,k,z);}

该程序几个注意点:

1、定义变量,即c,用char(要与整型常量分开定义)

2、用c去比较的时候,(例如c是属于0-9则输出,c=’0’)记得 ‘ ’!!!(无论字母还是数字都要有这个)

3、注意所有英文字母都有大小写,做类似的题时一定要注意

4、while语句中(c=getchar())读取的字符,如若等于‘\n’话结束

5、善于利用排除法