c语言 输入10个数,输出它们的平均值,并求出与平均值之差的绝对值为最小的 数组元素。
时间: 2024-03-25 08:35:21 浏览: 129
数组下标越界-c语言数组详解
好的,这是一个比较基础的C语言问题,下面是代码实现:
```c
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int nums[10]; // 存放10个数的数组
int sum = 0; // 用于计算数组元素的和
int avg; // 存放平均值
int min_index; // 存放平均值差的绝对值最小的元素下标
int min_diff; // 存放平均值差的绝对值最小的元素与平均值的差值
// 输入10个数
printf("请输入10个整数:\n");
for(int i=0; i<10; i++)
{
scanf("%d", &nums[i]);
sum += nums[i];
}
// 计算平均值
avg = sum / 10;
// 初始化最小值差的绝对值和下标
min_diff = abs(nums[0] - avg);
min_index = 0;
// 找到平均值差的绝对值最小的元素下标
for(int i=1; i<10; i++)
{
int diff = abs(nums[i] - avg);
if(diff < min_diff)
{
min_index = i;
min_diff = diff;
}
}
// 输出平均值和平均值差的绝对值最小的元素
printf("平均值为:%d\n", avg);
printf("平均值与数组中元素差的绝对值最小的元素为:%d\n", nums[min_index]);
return 0;
}
```
希望对你有所帮助!
阅读全文