填空题 请补充main函数,该函数的功能是:输出一个N×N矩阵,要求非对角线上的元素赋值为0,对角线元素赋值为1。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在 main函数的横线上填入所编写的若干表达式或语句。 试题程序: #include<stdio. h> #define N 10 main ( ) { int bb[N] [N]; int i, j,n; clrscr (); printf (" /nInput n:/n"); scanf ("%d", &n); for (i=0; i<n; i++) for (j=0; j<n; j++) { {{U}} 【1】 {{/U}}; if (i==j) bb[i] [j]={{U}} 【2】 {{/U}}; if ({{U}} 【3】 {{/U}}) bb[i] [j]=1; } printf(" /n***** the result ***** /n"); for (i=0; i<n; i++) { printf (" /n/n"); for (j=0; j<n; j++) printf ("%4d",bb [i] [j] ); } }
  • 1、
【正确答案】 1、bb[i][j]=0 (2)1 (3)j==n-1-i    
【答案解析】[解析] 填空1:本题的解题思路是先将所有元素都置0,然后再将对角线上的元素置1。所以此空是先将当前元素置0。 填空2:如果当前元素的下标i和j相等,则此元素是主对角线元素,要将它赋值为1。填空2:如果当前元素的下标i和j满足关j==n-1-i,则此元素也是对角线元素,也要将它赋值为1。