编程的结构:关于指针的练习:利用指针作为参数的一个函数.

/*关于指针数组记号,及指针函数参数,的自我编写代码练习*/

#include

#include

#include

#define BUF 10

int i=0;

double average(double const *p1);

int main(void){

int count=BUF;

char *ps=NULL;//用以暂时储存输入的数据。

ps=malloc(10*sizeof(char));

double *pnumber=malloc(count*sizeof(double));//用以储存输入数据。

while(1){

fgets(ps,10,stdin);//获取数据

if(*ps=='\n'){

break; //检测到空行便结束输入,跳出无限循环。

}

pnumber[i++]=atof(ps);

if((i-1)==count){

count+=BUF;

realloc(pnumber,count*sizeof(double));//比较空间若不够增加内存。

}

}

printf("%lf",average(pnumber));//输出平均数。

free(ps);

free(pnumber);

return 0;

}

//计算平均数函数,以双精度浮点数指针为参数

double average(double const *p1){

double sum=0;

for(int j=1;j<=i;j++){

sum+=p1[j-1];

}

return (sum/(i));

}

你可能感兴趣的:(编程的结构:关于指针的练习:利用指针作为参数的一个函数.)