Bootstrap

【数组】- 如何用C++数组统计相同数字出现的次数?

统计数字出现次数

数组是C++语言重要的数据结构,对它的一些基本操作要熟练掌握。那么,今天我们就来讨论,怎么使用数组统计一组数中每个数字出现的次数?

案例

题目描述

有50个数(0-19),求这50个数中相同数字出现的最多次数为几次?

输入

50个数字。

样例输入

1 10 2 0 15 8 12 7 0 3 15 0 15 18 16 7 17 16 9 1 19 16 12 17 12 4 3 11 1 14 2 11 14 6 11 4 6 4 11 13 18 7 0 3 2 3 18 19 2 16

输出

1个数字(即相同数字出现的最多次数)。

样例输出
4

程序代码

#include <iostream>
using namespace std;

int main(){
	// 存放每个元素 
	int x;
	
	// 用来存放每个数出现的次数
	int c[20] = {0};
	int i,m;	// m用来求最多的次数(c数组的最大值)
	
	// 读入50个数
	for(i = 0 ; i < 50 ; i++){
		cin >> x;
		// 下标为a[i]的c数组的元素要自增
		c[x]++; 
	}
	
	// 求最多出现的次数(c数组的最大数)
	m = c[0];
	for(i = 1 ; i < 20 ; i++){
		if(c[i] > m){
			m = c[i];	
		}
	}
	
	cout << m << endl;
}
;