请编写函数,销毁动态实数数组。
函数原型
void ArrayDestroy(double **array);
说明:array
为指向动态数组起始地址指针的二级指针,size
为数组尺寸。函数回收 array 所指一级指针所指示的动态实数数组的内存空间,并将该指针置为空指针(NULL)。
裁判程序
#include <stdio.h>
#include <stdlib.h>
void ArrayCreate(double **array, int size);
void ArrayDestroy(double **array);
void ArrayInput(double *array, int size);
void ArrayOutput(const double *array, int size);
double ArraySum(const double *array, int size);
double ArrayMax(const double *array, int size);
double ArrayMin(const double *array, int size);
double ArrayAvg(const double *array, int size);
int main()
{
double *a;
int n;
scanf("%d", &n);
ArrayCreate(&a, n);
ArrayInput(a, n);
ArrayOutput(a, n);
putchar('\n');
printf("%g\n", ArraySum(a, n));
printf("%g\n", ArrayMax(a, n));
printf("%g\n", ArrayMin(a, n));
printf("%g\n", ArrayAvg(a, n));
ArrayDestroy(&a);
return 0;
}
......
/* 你提交的代码将被嵌在这里 */
......
void ArrayDestroy(double **array){
if(*array==NULL)
return;
if(*array!=NULL){
free(*array);
*array=NULL;
}
}