main()
{int i,j,m=55; for(i=1;i<=3;i++)
for(j=3;j<=i:j++) m=m%j; printf("%d\n",m);程序的运行过程是怎样的
双层循环当i为3时满足j<=i执行m=m%j即55%3为1,然后输出m为1
首先进入main函数,你定义了三个整形变量i=0,j=0,m=55。此时程序来到第一个for循环程序循环四次,第一次i=1,1<=3,i++继续执行。第二次i=2,2<=3,i++继续执行。第三次i=3,3<=3,i++继续执行,第四次i=4,4!<=3退出循环。循环体内什么内容都没有也就{}里面什么都没有。第二个for循环程序执行一次,j=3,3!<=0,退出循环,并没有进入循环体内也就是{}内。此时程序来到m=m%j,55%0=0;程序结束。
#include<stdio.h>
int main()
{
int i = 0;
int j = 0;
int m = 55;
for (i = 1; i <= 3; i++)
{
}
for (j = 3; j <= i; j++)
{
}
m = m % j;
printf("%d\n", m);
return 0;
}