C语言学习中,求解答教材例题的疑惑,谢谢!
代码较长,如下:#include "stdio.h"
#include "stdlib.h"
#define SIZE 15
#define N 3
void getrand (int *, int);
void getave (int *, int *, int);
void priarr (int *,int);
main()
{ int x[SIZE], w[SIZE/N]={0}; /* w数组中置初值0,准备存放5个和值 */
getrand (x, SIZE);
printf("Output %d random numbers:\n", SIZE);
priarr(x, SIZE);
getave(x, w, SIZE);
printf("Output 5 sum number:\n");
priarr(w, SIZE/N);
}
void getrand(int *a, int n)
{...}
void getave(int *a, int *b, int n)
{ int i, j, sum;
for( sum=0, i=0, j=0; i<=n; i++)
{sum+=a[i];
if((i+1)%3==0)
{ b[j]=sum;
sum=0;
j++;
}
}
}
void priarr(int *a, int n)
{...}
标红的那行定义代码在说明的时候说是给W数组设置初值,请问为什么要设初值,后面的自定义函数不是会赋值么,如果不设置有没有影响?