解题思路:
注意事项:
参考代码:
#include<iostream>
#include<string>
#include<map>
using namespace std ;
int main ( )
{
string str = "" ;
getline ( cin , str ) ;
int len = str.size() ;
map< string , int > mp = { {"字母" , 0}, {"数字" , 0}, {"空格", 0}, {"其他", 0} } ;
//初始化map容器,创建一个“下标" 是字符串类型, 元素是int类型的map容器
//map容器根据”下标“按照字典排列元素的顺序
//这里不初始化也可以,没有我们使用的下标系统会自动创建并且初始化为0或者空NULL
for ( int i = 0 ; i < len ; i ++ )
{
if ( (str[i]>='a'&&str[i]<='z') || (str[i]>='A'&&str[i]<='Z'))
{
mp["字母"]++ ;
}
else if ( str[i]==' ' ) mp["空格"]++ ;
else if ( str[i]>='0' && str[i]<='9' ) mp["数字"]++ ;
else mp["其他"]++ ;
}
cout << mp["字母"] << " " << mp["数字"] << " " << mp["空格"] << " " << mp["其他"] << endl ;
//这里不能使用for循环使用下标进行遍历,因为map容器根据”下标“按照字典排列元素的顺序
return 0 ;
}
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复