回复 14楼 hengde_li
#include <stdlib.h> /* 增加 部分,该库有malloc函数 */
#include <stdio.h>
#include <math.h>
int main(void) {
int n, m, sum = 0;
int * a = (int *)malloc(sizeof(int)*n); /*分配内存// "此时n的值未知,怎么分配内存,这一句是不能通过编译的,假如能编译那么这个编译器该淘汰,改为int * a =NULL 等n值确定后再分配内存"*/
double average;
printf("Enter n: ");
scanf("%d", &n);
a = (int *)malloc(sizeof(int)*n)//此时n已确定,可分配内存
printf("Enter numbers:\n");
for(m = 0; m < n; m++){
printf("Enter %d #:",m+1);
scanf("%d", &a[m]);
sum+=a[m];
}
average = 1.0*sum / n;
printf("average = %g\n", average);
free(a);/* 释放内存*/
return 0;
}