首页 > 试题广场 >

以下程序的输出结果是( )

[单选题]
以下程序的输出结果是(   )

void main()
{
 int n[3][3], i, j;
 for (i = 0; i < 3; i++)
  for (j = 0; j < 3; j++)
   n[i][j] = i + j;
 for (i = 0; i < 2; i++)
  for (j = 0; j < 2; j++)
   n[i+1][j+1] += n[i][j];
 printf ("%d", n[i][j]);
}
  • 14
  • 0
  • 6
  • 不确定

最后,i和j都是2,第二个for循环里已经定义了n[2][2]=n[2][2]+n[1][1]=n[2][2]+n[1][1]+n[0][0],对角线的和

发表于 2018-09-27 14:57:07 回复(0)
更多回答
执行完for循环后,i、j分别等于2,而且得到的数组为:
0  1  2
1  2  4
2  4  6
所以n[2][2]为6


发表于 2017-11-17 15:19:19 回复(0)
我觉得本题应该选D啊,首先两个for循环都没有加大括号,说明只执行一遍,即第一个for循环执行完后的结果应该是n[0][0]=0+0,i=1,j=1;鱿鱼第二个for循环重新给i,j赋值,所以执行完后的结果应该是n[1][1]=n[1][1]+n[0][0],i=1,j=1;又因为n[1][1]的值不知道,所以无法求出n[1][1]。这是我的思路也不知道对不对,求哪位大佬指点一下
发表于 2019-10-12 10:46:13 回复(0)
???
发表于 2017-09-17 20:39:51 回复(0)