输入一行字符串(字符串长度小于10000,由大小写字母、阿拉伯数字和空格组成),分别统计出其中大写英文字母,小写英文字母、阿拉伯数字和空格的个数。
一行字符串(字符串长度小于10000,由大小写字母、阿拉伯数字和空格组成)
分别输出大写英文字母,小写英文字母、阿拉伯数字和空格的个数,用空格隔开
h0u84nfx 7
0 5 4 1
代码:
#include<stdio.h> #include<string.h> #include<iostream> #include<string> using namespace std; int main() { char a[10000]; gets(a); int x=0,b=0,c=0,d=0; for(int i=0;i<strlen(a);i++) { if(a[i]>='A' && a[i]<='Z') x++; else if(a[i]>='a' && a[i]<='z') b++; else if(a[i]>='0' && a[i]<='9') c++; else if(isspace(a[i])) d++; } cout<<x<<" "<<b<<" "<<c<<" "<<d<<endl; }
字符的统计是一道很简单的题,但是在输入的时候应该注意cin不能读入空格,所以在这里我们用char的话应该使用gets(),可以读入空格,但是不能用getline因为这个是用于string类型的,其次还有一点是不能直接写a[i]==" ",会报错应该用isspace()来判断是否含有空格。