解题思路:

1. 使用getchar()函数获取字符

2. 判断字符属于字母、数字、空格还是其它字符

3. 当这个字符是换行符是退出循环


注意事项:

1. 注意用getchar()函数获取字符,因为这样能获取到换行符。(这么一个函数竟然半天才想出来QAQ)


参考代码:


经过分析,思路就开朗多了!

直接上代码:

#include <iostream>
#include <cstdio>
#include <ctime>
#include <algorithm>//把常用的都写上
using namespace std;
int main()
{
	char ch;
	int z=0,s=0,k=0,q=0;
	while((ch=getchar())!='\n')//嗯,开始循环了
	{
		if((ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z'))//判断是否为字母
		{
			z++;
		}
		else if(ch>='0'&&ch<='9')//判断是否为数字
		{
			s++;
		}
		else if(ch==' ')//判断是否为空格
		{
			k++;
		}
		else
		{
			q++;
		}
	}
	printf("%d %d %d %d\n",z,s,k,q);//还是printf()函数输出方便些
	cout << endl;
	return 0;
}
//QAQ,拜拜

希望对您有帮助,点个赞赞吧!

点赞(2)
 

0.0分

1 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 3 条评论

zxzd 6年前 回复TA
@QAQK 因为我写的太水了~~~~~~~~
QAQK 6年前 回复TA
为什么不是优质题解???
myc1 6年前 回复TA
很有帮助!!!啧啧  
顶一下!!!