以下程序的输出结果是
A) 20 B) 21 C) 22 D)23
main()
{ int i, k, a[10], p[3];
k=5;
for (i=0;i<10;i++) a[i ]=i;
for (i=0;i<3;i++) p[i ]=a[i *(i+1)];
for (i=0;i<3;i++) k+=p[i] *2;
printf("%d\n",k);
}
我算得16,答案是B,请高人指点一下
确实应为B
for (i=0;i<10;i++) a[i ]=i;
上面一步完成后,a[0]=0;a[1]=1;*******a[9]=9
or (i=0;i<3;i++) p[i ]=a[i *(i+1)];
上面一步完成后,p[0]=0;p[1]=a[2]=2;p[2]=a[6]=6;
for (i=0;i<3;i++) k+=p[i] *2;
上面一步,第1次K=5+p[0]*2=5
第2次k=5+p[1]*2=9
第3次k=9+p[2]*2=21
for (i=0;i<10;i++) a[i ]=i;
上面一步完成后,a[0]=0;a[1]=1;*******a[9]=9
or (i=0;i<3;i++) p[i ]=a[i *(i+1)];
上面一步完成后,p[0]=0;p[1]=a[2]=2;p[2]=a[6]=6;
for (i=0;i<3;i++) k+=p[i] *2;
上面一步,第1次K=5+p[0]*2=5
第2次k=5+p[1]*2=9
第3次k=9+p[2]*2=21
温馨提示:答案为网友推荐,仅供参考