PAT B1021 个位数统计

前言

传送门

正文


思路

这里需要注意一个技巧,如何将字符型的数字转换为整数型的数字==>假设char型变量c是
‘0’~‘9’的一个字符,那么它所对应的数字就是c-‘0’,其实原理就是字符c的ASCII码值减去字符’0’的ASCII码值,其差值就是整数c,同理若需要将一个整型数字c转换为相应的字符c,那么只需要c+‘0’即可。由此扩展一下可以知道将一个大写字母转换为小写字母,比如‘M’转为’m’,那么只需要‘M’-‘A’+'a’即可。

参考题解

#include<iostream>
#include<string>
using namespace std;
/*
首先使用字符串n存储输入的正整数,遍历该字符串,将每一位字符
转换为数字,即使用该字符减去'0',再用一个整型数组res来存放
下标为i的数字的出现次数,最后升序输出该数组内容即可 
*/
int main(){
	string n;
	int res[10]={0},len;
	cin>>n;
	len=n.size();
	for(int i=0;i<len;i++){
		res[n[i]-'0']++;
	}
	for(int i=0;i<10;i++){
		if(res[i]!=0)cout<<i<<":"<<res[i]<<endl; 
	}
	return 0;
} 
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-02 18:35
简历上把1个月实习写成了3个月,会进行背调吗?
码农索隆:一个月有一个月的实习经历,三个月有三个月的实习经历
点赞 评论 收藏
分享
Rena1ssanc...:对的,要是面评没太烂,勤更新简历等捞就行了,腾讯可以无限复活
点赞 评论 收藏
分享
05-30 12:03
山西大学 C++
offer来了我跪着...:不是骗子,等到测评那一步就知道为啥这么高工资了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-04 14:35
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务