本题要求编写程序,输入N个字符,统计其中英文字母、空格或回车、数字字符和其他字符的个数。

输入格式:

输入在第一行中给出正整数N,第二行输入N个字符,最后一个回车表示输入结束,不算在内。

输出格式:

在一行内按照

letter = 英文字母个数, blank = 空格或回车个数, digit = 数字字符个数, other = 其他字符个数

的格式输出。请注意,等号的左右各有一个空格,逗号后有一个空格。

输入样例:

10
aZ &
09 Az

输出样例:

letter = 4, blank = 3, digit = 2, other = 1

答案:

#include<stdio.h>
int main()
{
	int digit, i, letter, N, other, blank;
	char ch;
	digit = letter = other = blank = 0;
	scanf("%d", &N);
	getchar();
	for(i = 1; i<=N; i++){
		ch = getchar();
		if((ch>='a'&& ch<='z')||(ch>='A'&& ch<='Z')){
			letter++;
	    }else if(ch>='0'&& ch<='9'){
	    	digit++;
		}else if(ch==' '|| ch=='\n'){
			blank++;
		}else{
			other++;
		}
	}
	printf("letter = %d, blank = %d, digit = %d, other = %d\n", letter, blank, digit, other);
	
	return 0;
}

更多推荐

统计字符(C语言)