一维数组程序相关问题

#include <stdio.h>
#include <math.h>
#define N 5
int main()
{ int i;
float a=0,b=0,x[N]={10.4, 10.2, 10.5, 10.3, 10.1};
for(i=0;i<N;i++) a+=x[i];
a/=N;
for(i=0;i<N;i++) b+=fabs(a-x[i]);
printf("a=%.2f,b=%.2f\n",a,b);
}
这个程序for后面是什么意思 不太看得懂😢

代码功能注释在代码中:


#include <stdio.h>
#include <math.h>
#define N 5
int main()
{
    int i;
    float a = 0, b = 0, x[N] = { 10.4, 10.2, 10.5, 10.3, 10.1 };
    for (i = 0; i < N; i++) 
        a += x[i];        //a=a+x[i],即将数组x的元素求和并赋值给a
    a /= N;                    //a=a/N,和除以总数,相当于求x数组的平均值,并赋值给a
    for (i = 0; i < N; i++) 
        b += fabs(a - x[i]);        //b=b+|a-x[i]|  ,求每个元素与平均值的差的绝对值,所有差的和赋值给b
    printf("a=%.2f,b=%.2f\n", a, b);
}

第7行:第一个for循环,求出数组X各元素值的和
第8行:求平均值
第9行:求出偏差的总值。fabs()是取绝对值函数