以下程序的输出结果是( )。 #inc1ude main() { int a[3][3]={0,1,2,0,1,2,0,1,2},i,j,s=1; for(i=0;i

admin2020-07-28  39

问题 以下程序的输出结果是(    )。
    #inc1ude
    main()
    {  int a[3][3]={0,1,2,0,1,2,0,1,2},i,j,s=1;
    for(i=0;i<3;i++)
    for(j=i;j<=i;j++)
    s+=a[a[j][j]];
    printf("%d\n",S);
  }

选项 A、3
B、4
C、l
D、9

答案B

解析 当外层循环为i时,内层循环i只能取j—i,所以s+=a[0][a[j][j],其实就是s+=a[a],当i=0时,s=s+a[0][a[0][0]]=s+a[0][0]—1,当i=1时,s=s+a[1][a[1][1]]=s+a[1][1]=1+1=2,当1=2时,s=s+a[2][a[2][2]]=s+a[2][2]=2+2=4。
转载请注明原文地址:https://kaotiyun.com/show/OP3p777K
0

最新回复(0)