#include"stdio.h"
// 求最大公约数的函数
int gcd(int a, int b) {
while (b!= 0) {
int temp = b;
b = a % b;
a = temp;
}
return a;
}
int main() {
int a[20], *p = NULL;
int great = 0, below = 0;
int n, i, s = 0;
float ave = 0;
// 输入要处理的数据个数
scanf("%d", &n);
for (i = 0; i < n; i++) {
// 输入数据
scanf("%d", &a[i]);
// 累计数据总和
s += a[i];
}
// 计算平均值
ave = (float)s / n;
for (p = a; p < a + n; p++) {
// 如果当前值大于平均值,增加大于平均值的计数
if (*p > ave) {
great++;
} else if (*p < ave) {
// 如果当前值小于平均值,增加小于平均值的计数
below++;
}
}
// 求大于平均值的个数和小于平均值的个数的最大公约数
int commonDivisor = gcd(great, below);
// 输出大于平均值的个数和小于平均值的个数
printf("大于平均值的个数:%d,小于平均值的个数:%d\n", great, below);
// 输出化简后的最简比例
printf("最简比例:%d:%d\n", great / commonDivisor, below / commonDivisor);
return 0;
}
统计数组中大于等于平均值和小于平均值的比例
最新推荐文章于 2024-06-07 09:40:26 发布