Description
给出一串字符,要求统计出里面的字母、数字、空格以及其他字符的个数。
字母:A, B, ..., Z、a, b, ..., z组成
数字:0, 1, ..., 9
空格:" "(不包括引号)
剩下的可打印字符全为其他字符。
Input
测试数据有多组。
每组数据为一行(长度不超过100000)。
数据至文件结束(EOF)为止。
Output
每组输入对应一行输出。
包括四个整数a b c d,分别代表字母、数字、空格和其他字符的个数。
Sample
Input
A0 ,
Output
1 1 1 1
Hint
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
int main(){
char s[100000];
int i, l, countch, countnum, countspa, countothch;
while(gets(s) != NULL){
countch = 0;
countnum = 0;
countspa = 0;
countothch = 0;
l = strlen(s);
for(i = 0; i < l; i++){
if((s[i] >= 'A' && s[i] <= 'Z') || (s[i] >= 'a' && s[i] <= 'z')){
countch++;
}
else if(s[i] >= '0' && s[i] <= '9'){
countnum++;
}
else if(s[i] == ' '){
countspa++;
}
else{
countothch++;
}
}
printf("%d %d %d %d\n", countch, countnum, countspa, countothch);
}
return 0;
}