首页 > 试题广场 >

阅读下列程序,下述程序运行后输出结果是?

[单选题]
阅读下列程序:
#include<iostream>
using namespace std;

int main()
{
    int n[3], i, j, k;
    for (i = 0; i < 3; i++)
        n[i] = 0;
    k = 2;
    for (i = 0; i < k; i++)
        for (j = 0; j < k; j++)
            n[j] = n[i] + 1;
    printf("%d\n", n[1]);
}
下述程序运行后输出结果是
  • 2
  • 1
  • 0
  • 3
D
for(i = 0; i < 3; i++)
        n[i] = 0;
此时n中的元素为:{0,0,0}
    k = 2;
    for(i = 0; i < k; i++)
        for(j = 0; j < k; j++)
            n[j] = n[i] + 1;
因为k=2;i的取值只有0,1 j的取值只有0,1。
当i=0 时 
j=0 n[0]=n[0]+1=1
j=1 n[1]=n[0]+1=2
 n中的元素变为{1,2,0} 
当i=1时 
j=0 n[0]=n[1]+1=3
j=1 n[1]=n[1]+1=3
n中的元素变为:{3,3,0} 这个也是n在内存中最终的状态
题目输出n[1]就是3
编辑于 2015-10-17 07:38:21 回复(0)
更多回答
炫头像
选D,静茹嵌套循环中分析每一步n[]值得变化
发表于 2015-10-17 23:13:45 回复(0)
D
发表于 2015-02-05 11:28:13 回复(0)
这题目有问题吧!
printf(“ % d\n”, n);
 输出的是n的地址的十进制值。
发表于 2014-12-15 12:30:15 回复(0)