已知一维数组A中已经存放了200个整数,编写代码段,其功能是输出该数组中所有不同的数据值及其在该数组中各自出现的次数,即:对数组中不同的数据各自出现的频率进行统计并输出。题意举例,对于只有10个元素的数组,若存放的数组如下:
3 | 5 | 3 | 3 | 10 | 7 | 7 | 5 | 3 | 7 |
则程序应该能够输出:
3 出现的次数是4
5 出现的次数是2
10 出现的次数是1
7 出现的次数是3
统计结果输出的顺序可以任意,输出格式也可以按照自己认为恰当的形式进行设计。
#include<stdio.h> int main(){ int A[10]={3,5,3,3,10,7,7,5,3,7}; int B[10],time[10]={0},kind=0,i,j; /*B中存放出现过的不同的数字, time中存放B中对应数字的出现次数, kind是不同数字的种类个数*/ for(i=0;i<10;i++){ for(j=0;j<kind;j++) if(A[i]==B[j]){ time[j]++; break; } if(j==kind){ B[kind]=A[i]; time[kind]=1; kind++; } } for(i=0;i<kind;i++) printf("%d:出现%d次\n",B[i],time[i]); return 0; }