统计字符的个数C++

题目描述

从键盘中任意输入一串字符,直至输入"#"字符代表结束.请编程统计输入的字符中的大写字母,小写字母和数字字符的个数分别是多少?

输入

输入只有一行,包括一串字符.(长度小于20)

输出

输出只有一行(这意味着末尾有一个回车符号),包括3个整数。分别代表大写字符,小写字符和数字字符的个数。

样例输入 复制
复制代码
daDSALDdcada3240#
样例输出 复制
复制代码
5 7 4

话不多说,直接上代码:

带注释版:

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int main() 
{
    //数据定义
	string a;
	int c1=0,c2=0,c3=0;
	//输入
	cin>>a;
	for (int i=0;i<a.size();i++) {
	    //C++自带函数
		if(isupper(a[i])) {
			c1++;//大写字母
		} else if(islower(a[i])) {
			c2++;//小写字母
		} else if(isdigit(a[i])) {
			c3++;//数字
		}
	}
	//输出
	cout<<c1<<' '<<c2<<' '<<c3;
	return 0;
}

不带注释版:

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int main() 
{
	string a;
	int c1=0,c2=0,c3=0;
	cin>>a;
	for (int i=0;i<a.size();i++) {
		if(isupper(a[i])) {
			c1++;
		} else if(islower(a[i])) {
			c2++;
		} else if(isdigit(a[i])) {
			c3++;
		}
	}
	cout<<c1<<' '<<c2<<' '<<c3;
	return 0;
}

感谢你的观看!

相关推荐
@小柯555m几秒前
算法(移动零)
数据结构·算法·leetcode
Chase_______几秒前
【Java杂项】为什么 long 可以自动转 float?宽化基本类型转换与精度丢失详解
java·开发语言·python
listhi5201 分钟前
基于QT的串口心电波形实时显示系统
开发语言·qt
之歆1 分钟前
DAY_12JavaScript DOM 完全指南(三):高级工程篇
开发语言·前端·javascript·ecmascript
invicinble2 分钟前
java数组相关的信息量
java·开发语言·python
小江的记录本2 分钟前
【Java基础】Java 8-21新特性 :JDK17:密封类、模式匹配、Record类(附《思维导图》+《面试高频考点清单》)
java·数据结构·后端·python·mysql·面试·职场和发展
码小猿的CPP工坊3 分钟前
AI时代C++软件开发工程师的思考
c++·人工智能
牧瀬クリスだ7 分钟前
Java线程——从创建第一个线程到休眠线程
java·开发语言
蜡笔小马10 分钟前
13.C++设计模式-策略模式
c++·设计模式·策略模式
我命由我1234512 分钟前
Android 开发问题:TextView 内容超过宽度时,默认不会换行
android·开发语言·java-ee·android studio·android jetpack·android-studio·android runtime