C语言! 给我详细的解释 谢!

来源:百度知道 编辑:UC知道 时间:2024/07/15 16:05:52
main()
{
int p[8]={11,12,13,14,15,16,17,18},i=0,j=0;
while(i++<7) if(p[i]%2) j+=p[i];
printf("%d ",j);
}
程序运行后的输出结果是
A)42 B)45 C)56 D)60

第一次进入循环。。在if语句中。。i=1,p[1]=12%2==0;
第二次进入循环。。i=2,p[2]=13,j=13;
。。。。。。。。。i=3,p[3]=14,j=13;
..................i=4,p[4]=15,j=28;
..................i=5,p[5]=16,j=28;
..................i=6,p[6]=17,j=45;
最后一次进入循环,while判断i=6<7,进入if语句,i已经在while判断中自加了一,但是p[7]=18%2==0,所以j不变。。
最后。j=45

学的不好啊

一看就是90后。