输入一行字符,统计其中各种字符个数(C语言)

输入一行字符,统计其中各种字符个数

编译环境VS2017

其中输出英文字母,数字,空格以及其他字符的个数
需要注意的是fgets()函数的使用,会在字符串末尾(\0前)读入我们在键盘上敲的回车即换行符\n

#include
#include
#include
#define M 1024
void main() {
	char str[M];
	fgets(str, M, stdin);
	int space = 0;
	int letter = 0;
	int num = 0;
	int other = 0;
	for (int i = 0; i < (int)strlen(str); ++i) {
		if (str[i] == ' ') {
			space += 1;
		}
		else if (str[i] > 64 && str[i] < 91 || str[i]>96 && str[i] < 123)  {
			letter += 1;
		}
		else if (str[i] > 47 && str[i] < 58)  {
			num += 1;
		}
		else {
			if (str[i] != '\n') {//因为fgets()函数会在末尾自动加上\n,影响判断结果,需要判断是否为换行符
				other += 1;
			}
		}
	}
	printf("空格的个数为:%d\n", space);
	printf("英文字母的个数为:%d\n", letter);
	printf("数字的个数为:%d\n", num);
	printf("其他字符的个数为:%d\n", other);
	system("pause");
}

运行结果如下:

输入一行字符,统计其中各种字符个数(C语言)_第1张图片

你可能感兴趣的:(输入一行字符,统计其中各种字符个数(C语言))