#include<stdio.h>
#include<stdlib.h>
int a[24] = { 1,5,3,2,5,4,6,5,7,9,6,2,66,4,1,55,5,7,5,9,5,7,5,9 };
//数组b用于记录元素出现的次数
int b[24] = { 0 };
int main() {
printf("数组a的元素依次为:\n");
for (int i = 0; i < 24; i++) {
printf("%3d", a[i]);
}
printf("\n数组a的元素排序后依次为:\n");
for (int i = 0; i < 24 - 1; i++) {
for (int j = 0; j < 24 - 1 - i; j++) {
if (a[j] > a[j + 1]) {
int temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
for (int i = 0; i < 24; i++) {
printf("%3d", a[i]);
}
printf("\n");
int cnt = 1,tmp = a[0];
for (int i = 1; i <= 24; i++) {
if (a[i] == tmp) {
cnt++;
}
else {
printf("元素:%d的出现次数为:%d\n", a[i - 1], cnt);
//cnt表示元素出现次数
b[i - 1] = cnt;
cnt = 1;
tmp = a[i];
}
}
for (int i = 0; i < 24 - 1; i++) {
for (int j = 0; j < 24 - 1 - i; j++) {
if (b[j] > b[j + 1]) {
int temp = b[j];
b[j] = b[j + 1];
b[j + 1] = temp;
}
}
}
printf("\n数组a的元素出现次数依次为:\n");
for (int i = 0; i < 24; i++) {
printf("%3d", b[i]);
}
int min_cnt;
for (int i = 0; i < 24; i++) {
if(b[i] != 0) {
min_cnt = b[i];
break;
}
}
printf("\n数组a中元素出现次数最多的元素的出现次数为;%d\n",b[24-1]);
printf("\n数组a中元素出现次数最少的元素的出现次数为;%d\n", min_cnt);
return 0;
}
求元素出现个数
最新推荐文章于 2021-08-15 17:02:21 发布