解题思路:
这里提供了数组的解法思路,输入的字符串中包含空格,因而用到了gets(),不过大家也可以思考一下不用数组而用getchar()来做这道题
注意事项:
定义的量有些多,需要注意到每个量的作用,不过思维量小了很多
参考代码:
#include<stdio.h> #include<string.h> int sta(char a[]); int main() { char b[100]; gets(b); sta(b); return 0; } int sta(char a[]) { int l,i,c=0,n=0,b=0,o=0; l=strlen(a); //计算数组的长度 for(i=0;i<l;i++) //用长度来决定循环 { if(a[i]<='z'&&a[i]>='a'||a[i]<='Z'&&a[i]>='A') { c++; } else if(a[i]<='9'&&a[i]>='0') { n++; } else if(a[i]==' ') { b++; } else { o++; } } printf("%d %d %d %d",c,n,b,o); }
0.0分
0 人评分