求平均值
编写一个程序,计算从键盘输入的任意个浮点数的平均值,将所有的数存储到动态分配的内存中,之后计算并显示平均值,用户不用事先指定要输入多少个数。
程序代码:#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define N 100
#define D 100
int main(void)
{
char a[N] = {'\0'};
char *p[D] = {NULL};
int i = 0;
int m = 0;
double n = 0.0;
printf("请输入任意个浮点数,再一次按回车结束:\n");
while((*fgets(a, N, stdin) != '\n') && i < N)
{
p[i] = (char *)malloc(strlen(a) + 1);
if(p[i] == NULL)
{
printf("内存不足!\n");
return 1;
}
strcpy(p[i++], a);
}
m = i;
for(i = 0; i < m; i++)
{
n = n + atof(p[i]);
free(p[i]);
p[i] = NULL;
}
printf("平均值是:%lf\n", n/((double)m));
return 0;
}
没人做出来,不给分···






