下列程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数 fun(int a[][N]),该函数的功能是:使

下列程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数 fun(int a[][N]),该函数的功能是:使数组左下半三角元素中的值全部置成0。再写个主函数调用下

/*下列程序定义了N×N的二维数组,并在主函数中自动赋值。
请编写函数 fun(int a[][N]),该函数的功能是:使数组左下半三角元素中的值全部置成0。再写个主函数调用下*/

#include <stdio.h>

#define  N (4)

void fun(int a[][N])
{
int i=0,j=0;
for (i=0;i<N;i++)
{
for (j=0;j<N;j++)
{
if (i+j>=4)
{
a[i][j] = 0;
}
}
}
}

int main()
{
int a[N][N] = {0},n=0, i =0,j=0;
for (i=0;i<N;i++)
{
for (j=0;j<N;j++)
{
a[i][j] = i*j+1;
}
}
for (i=0;i<N;i++)
{
for (j=0;j<N;j++)
{
printf ("%2d ",a[i][j]);
}
printf("\n");
}
fun(a);
printf("after\n");
for (i=0;i<N;i++)
{
for (j=0;j<N;j++)
{
printf ("%2d ",a[i][j]);
}
printf("\n");
}
}

1  1  1  1
1  2  3  4
1  3  5  7
1  4  7 10
after
1  1  1  1
1  2  3  0
1  3  0  0
1  0  0  0
Press any key to continue

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-03-02
下列程序定义了N×N的二维数组,并在主函数中自动赋值。请编写函数 fun(int a[][N]),该函数的功能是:使数组左下半三角元素中的值全部置成0。用主函数调用下本回答被提问者和网友采纳