一维数组给二维数组赋值的问题
俺是C语言的初学者,在用C语言编程中想将一个一维数组的非零值赋值到二维的对角线上,但是输出结果总是不对,希望各位大侠指点一下,十分感谢void spmatrix(double sum[10])
{
int i,j,k;
double a[10][10];
for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
{
for(k=0;k<10;k++)
{
if((sum[k]!=0)&&(i==j))
{
a[i][j]=sum[k];
}
else
a[i][j]=0;
}
}
}
}
void main()
{
int i,j,k;
double a[10][10],sum[10]={0,1,2,3,4,5,6,7,8,9};
void spmatrix(sum);
for(i=0;i<10;i++)
for(j=0;j<10;j++)
printf("a[%d][%d]:%d\n",i,j,a[i][j]);
while (1);
}