c++统计数组中0到9出现次数
时间: 2023-12-09 12:05:45 浏览: 79
您好,要统计数组中0到9出现的次数,可以使用一个长度为10的计数数组,遍历原数组,遇到一个数字就将对应计数数组的元素加1,最后计数数组中每个元素的值即为对应数字在原数组中出现的次数。以下是示例代码:
```c
#include <stdio.h>
int main() {
int arr[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0};
int count[10] = {0}; // 初始化计数数组为0
for (int i = 0; i < sizeof(arr) / sizeof(arr[0]); i++) {
count[arr[i]]++; // 将对应计数数组的元素加1
}
// 输出每个数字出现的次数
for (int i = 0; i < 10; i++) {
printf("%d出现了%d次\n", i, count[i]);
}
return 0;
}
```
输出结果为:
```
0出现了2次
1出现了2次
2出现了2次
3出现了2次
4出现了2次
5出现了2次
6出现了2次
7出现了2次
8出现了2次
9出现了2次
```
相关问题
利用c++对一个数组中0~9的数字出现次数进行统计,并根据次数降序输出出现次数和对应的数字
好的,下面是代码:
```c++
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
int n, cnt[10] = {0}; // cnt数组用于统计数字出现次数
cin >> n;
for(int i = 0; i < n; i++)
{
int x;
cin >> x;
cnt[x]++;
}
pair<int, int> p[10]; // pair数组用于存储数字出现次数和对应的数字
for(int i = 0; i < 10; i++)
{
p[i].first = cnt[i];
p[i].second = i;
}
sort(p, p+10, greater<pair<int, int>>()); // 降序排序
for(int i = 0; i < 10; i++)
{
if(p[i].first == 0) break; // 如果出现次数为0,则退出循环
cout << p[i].second << "出现了" << p[i].first << "次" << endl;
}
return 0;
}
```
这个程序先输入一个整数n,表示数组的长度,然后输入n个数字,并统计每个数字出现的次数。接着使用pair数组存储数字出现次数和对应的数字,然后按照出现次数进行降序排序,最后输出出现次数和对应的数字。
定义一个int类型的数组,统计数组元素出现的次数
定义一个int类型的数组arr[]={1,2,3,4,3,2,1,1,4,5,3,2},要统计数组元素出现的次数可以使用一个长度为10的整型数组count[]来记录。首先将count[]数组的所有元素初始化为0,然后遍历数组arr[],对于数组中的每个元素num,将count[num]的值加1,即count[num]++。这样就能统计每个元素出现的次数。最后遍历count[]数组,输出每个元素及其出现次数。
具体的代码如下:
```javascript
#include <iostream>
using namespace std;
int main() {
int arr[] = {1, 2, 3, 4, 3, 2, 1, 1, 4, 5, 3, 2}; // 定义int类型的数组arr
int count[10] = {0}; // 定义一个长度为10的整型数组count,并将所有元素初始化为0
for (int i = 0; i < sizeof(arr) / sizeof(arr[0]); i++) {
int num = arr[i]; // 获取数组中的每个元素
count[num]++; // 将count[num]的值加1
}
for (int i = 0; i < 10; i++) {
if (count[i] > 0) {
cout << "元素" << i << "出现次数:" << count[i] << endl;
}
}
return 0;
}
```
运行结果为:
```
元素1出现次数:3
元素2出现次数:3
元素3出现次数:3
元素4出现次数:2
元素5出现次数:1
```
以上是利用C++语言来实现统计数组元素出现次数的方法,当然也可以使用其他编程语言来实现类似的功能。