C语言基础选择题,请附解题过程,谢谢

来源:百度知道 编辑:UC知道 时间:2024/06/11 11:16:57
int i=1,a[]={1,5,10,9,13,7};
while(a[i]<=10) a[i++]+=2;
for (i=0;i<6;i++) printf("%d",a[i]);

A) 2 7 12 11 13 9 B)1 7 12 11 13 7
C)1 7 12 11 13 9 D)1 7 12 9 13 7

a[1]=5<=10
a[1]+2=7 //7
i++ i=2

a[2]=10<=10
a[2]+2=12 //12
i++ i=3

a[3]=9<=10
a[3]+2=11 //11
i++ i=4

a[4]=13>10

结果1 7 12 11 13 7
选B

答案是B
1.i=1 a[1]=5 a[i]<=10成立 a[i++]+=2 =>a[i++]=a[i++]+2 =>a[1]=a[1]+2 =>a[1]=7

2.i=1 a[1]=7 a[i]<=10成立 a[2]=a[2]+2

...........