在数组中输入10个整数(不超过百位,数组中应存在相同c语言大小的数),打印出该数组中的众数与极值
时间: 2024-10-06 12:06:20 浏览: 39
在C语言中,为了找到数组中的众数(出现次数最多的数值)和极值(最小值和最大值),你可以采用如下的步骤:
1. 首先,我们需要遍历整个数组,找出所有元素并记录每个元素出现的次数。可以创建一个大小与数组相同的一维数组用于存储频率,同时跟踪当前的最大值和最小值。
```c
#include <stdio.h>
#include <limits.h>
int main() {
int arr[10], freq[10] = {0}, max_val = INT_MIN, min_val = INT_MAX;
int i, count = 0;
// 输入10个整数
for (i = 0; i < 10; ++i) {
printf("Enter number %d: ", i+1);
scanf("%d", &arr[i]);
// 更新最大值和最小值
if (arr[i] > max_val) {
max_val = arr[i];
}
if (arr[i] < min_val) {
min_val = arr[i];
}
// 记录频次
if (freq[arr[i]] == 0) {
count++;
}
freq[arr[i]]++;
}
// 查找众数
for (i = 0; i < 10; ++i) {
if (freq[i] == count && i != max_val && i != min_val) {
printf("众数是: %d\n", i);
break;
}
}
// 打印极值
printf("最大值是: %d, 最小值是: %d\n", max_val, min_val);
return 0;
}
```
在这个程序中,我们首先输入10个整数,然后在每次迭代中更新最大值、最小值,并统计各元素的出现次数。最后,通过遍历频次数组找出出现次数最多的数作为众数。
阅读全文
相关推荐

















