个位数统计 用string str 来记录数字字符串,-'0'来转化 // str[i] -‘0’来转化成int形式 因为 str[i] -‘0’ ==》 对应数字 0--9 //只有
2017-11-19 23:21
260 查看
/*
请编写程序统计每种不同的个位数字出现的次数。例如
输入格式:
每个输入包含1个测试用例,即一个不超过1000位的正整数N。
输出格式:
对N中每一种不同的个位数字,以D:M的格式在一行中输出该位数字D及其在N中出现的次数M。
要求按D的升序输出。
输入样例:
100311
输出样例:
0:2
1:3
3:1
*/
// str[i] -‘0’来转化成int形式 因为 str[i] -‘0’ ==》 对应数字 0--9
//只有 10数字 0-9 所以 a[ str[i] -‘0’ ] a[9] 9号数字的出现的次数
#include<iostream>
#include<string>
using namespace std;
int main()
{
string str;
cin>>str;
int a[10]={0}; //a【】存0-9 出现的次数
for(int i=0;i<str.length();i++)
{
a[ str[i]-'0' ]++; //////str[i]-'0' 数字 9 对应 a【i】里面的 i=9 那么a[9]++
}
for(int i=str.length();i>=0;i--)
{
if(a[i]!=0)
cout<<i<<" : "<<a[i]<<endl;
}
return 0;
}
请编写程序统计每种不同的个位数字出现的次数。例如
输入格式:
每个输入包含1个测试用例,即一个不超过1000位的正整数N。
输出格式:
对N中每一种不同的个位数字,以D:M的格式在一行中输出该位数字D及其在N中出现的次数M。
要求按D的升序输出。
输入样例:
100311
输出样例:
0:2
1:3
3:1
*/
// str[i] -‘0’来转化成int形式 因为 str[i] -‘0’ ==》 对应数字 0--9
//只有 10数字 0-9 所以 a[ str[i] -‘0’ ] a[9] 9号数字的出现的次数
#include<iostream>
#include<string>
using namespace std;
int main()
{
string str;
cin>>str;
int a[10]={0}; //a【】存0-9 出现的次数
for(int i=0;i<str.length();i++)
{
a[ str[i]-'0' ]++; //////str[i]-'0' 数字 9 对应 a【i】里面的 i=9 那么a[9]++
}
for(int i=str.length();i>=0;i--)
{
if(a[i]!=0)
cout<<i<<" : "<<a[i]<<endl;
}
return 0;
}
相关文章推荐
- 面试题: 十进制INT数字转化为16进制字符串、实现字符串和数字的相互转化
- 写一个double my_atof(char *str)函数,将一个数字字符串转换成对应的浮点数
- 为函数原型编写函数定义:int my_atoi(char *str);(将一个数字字符串转换成该字符串对应的数字(包括正整数、负整数))
- 实现将一个字符串转化成对应的整形数字
- 数字字符串与int相互转化
- int ascii_to_integer(char *str)函数 将一串数字字符转化成对应的整形数字
- C#double转化成字符串 保留小数位数, 不以科学计数法的形式出现。
- 将数字字符串转化为对应数字输出(不考虑溢出)
- int my_atof(char *str) 将一个数字字符串转换成该字符串对应的数字(包括正整数、负整数)
- C#double转化成字符串 保留小数位数, 不以科学计数法的形式出现
- 统计已知字符串str中数字的个数
- 编写一个函数,将一个数字字符串转换成这个字符串对应的数字(包括正浮点数、负浮点数);函数原型:double my_atof(char *str)
- 统计字符串中数字个数,并将数字字符串形式输出
- C#double转化成字符串 保留小数位数, 不以科学计数法的形式出现
- JS将数字转化成指定位数的字符串
- 实现将一个字符串转化成对应的整形数字
- C#double转化成字符串 保留小数位数, 不以科学计数法的形式出现。
- str to int, long, float; 数字 转 字符串; 大小写转换等
- C#double转化成字符串 保留小数位数, 不以科学计数法的形式出现。
- 将数字字符串转化为对应数字输出(不考虑溢出)