C语言
#include<stdio.h>int main()
{
int m, k = 0, s = 0;
for(m = 1;m <= 4; m++)
{
switch(m%4)
{
case 0:
case 1:s+=m;break;
case 2:
case 3:s-=m;break;
}
k+=s;
}
printf("%d",k);
}
执行过程:
初始化:m = 1; k = 0, s = 0
①:m%4 = 1执行case1;s=0+1=1;break;
k=k+s=1;
②:m++=2;m%4 = 2;执行case2;s = 1-2 =-1;break
k=k+s=0;
③:m++=3;m%4 = 3;执行case3;s = -1-3 =-4;break
k=k+s=-4;
④:m++=4;m%4 = 0;执行case0;s = -4+4=0;break
k=k+s=-4;
上面的程序执行过程是这样的吗?
我认为你的解答没问题
最后,给你一个建议,你直接下断跟踪下,不直接解决问题了吗?
页:
[1]