蒜头君有很多张写着数字的卡片,每张卡片上有一个 1 - 101−10 之间的整数,现在需要我们统计每张卡片有多少张。
我们可以用一个长度为 1111 的数组存储这个信息,数组的下标表示卡片上的数字,数组元素表示该卡片出现了多少次。
首先在 using namespace std;
下一行写:
int cnt[11];
定义全局变量的好处是可以将数组元素全部初始化为 0。
接下来,每读入一个数,我们就将它对应的数组元素的值加一:
cnt[temp]++;
cnt[1]
中存储的是数字 1 出现的次数,cnt[2]
中存储的是数字 2 出现的次数。
现在我们遍历数组,输出所有数字出现的次数:
for (int i = 1; i <= 10; i++) {
cout << i << " " << cnt[i] << endl;
}
合起来的代码如下:
#include <iostream>
using namespace std;
int cnt[11];
int main() {
int n;
cin >> n;
for (int i = 0; i < n; i++) {
int temp;
cin >> temp;
cnt[temp]++;
}
for(int i=1;i<=10;i++){
cout<<i<<" "<<cnt[i]<<endl;
}
return 0;
}