Онлайн компилятор C

#include <stdio.h> #define N 5 int main() { int p=0; int arr[N]; fill_arr(arr_N); for (int i=1;i<N;i++){ p=p+i; } float s=(float)p/N; printf("%.3f",s); return 0; }
这段代码试图计算数组元素的平均值,但存在几个问题。代码中定义了一个数组 `arr`,但从未给它赋值,而是调用了一个未定义的函数 `fill_arr`。循环中累加的是索引值 `i` 而不是数组元素,所以最终计算的是索引的平均值而非数组元素的平均值。

- 函数 `fill_arr` 没有定义,你需要自己实现数组的初始化,比如用循环给每个元素赋值。
- 循环中 `p=p+i` 累加的是循环变量 `i`,而不是数组元素 `arr[i]`,应该改为累加数组元素的值。