C语言求平均值衍生问题

img

这道题就是求一组数组10个数的平均值,然后又让你求这10个数中哪个数字最接近这个平均值
大家看看有没有什么问题
还有就是,定义b数组,这样子写对不对??
最后结果是可以运行。

有几处小问题:

  • 一个是在给b数组赋值时

  • 还有一个是在最后输出是

  • 还有就是在精度上的问题

下面是代码,有用记得点采纳哟

#include <stdio.h>
#include <math.h>

int main() {
    int i;
    float sum = 0,avg;
    float a[10],b[10];
    for(i = 0; i<10; i++) {
        scanf("%f",&a[i]);
        sum += a[i];
    }
    avg = sum/10;
    for(i = 0; i<10; i++) {
        b[i] = fabs(a[i] - avg);
    }

    float min = b[0];
    int ID = 0;
    for(i = 1; i<10; i++) {
        if(b[i]<min) {
            min = b[i];
            ID = i;
        }
    }
    printf("平均值为%.1f 数组中最接近平均值的数为%.f",avg,a[ID]);
    return 0;
}

这样应该不太对,不应该是b[10],应该是b[i]

img

以上仅供参考,如有任何疑问,可以评论回复,看到即回。
希望对题主有所帮助!可以的话,点个采纳!