整数的位数可能各不相同,给定一组整数,请按位数分类统计,输出每种位数的出现次数。c++
时间: 2023-10-06 17:09:09 浏览: 81
统计每个整数的出现次数
3星 · 编辑精心推荐
可以使用map来进行统计,代码如下:
```c++
#include <iostream>
#include <map>
using namespace std;
int main()
{
int n;
cin >> n;
map<int, int> cnt; //使用map进行统计
for(int i = 0; i < n; i++)
{
int num;
cin >> num;
int digit = 0;
while(num > 0) //计算数字的位数
{
digit++;
num /= 10;
}
cnt[digit]++; //统计每种位数的出现次数
}
for(auto it = cnt.begin(); it != cnt.end(); it++) //遍历输出结果
{
cout << it->first << " digit: " << it->second << endl;
}
return 0;
}
```
输入示例:
```
5
1 12 345 6789 12345
```
输出示例:
```
1 digit: 1
2 digit: 1
3 digit: 1
4 digit: 1
5 digit: 1
```
阅读全文