#include
main( )
{int i=0,a=0;
while(i<20)
{for(;;) //其实就是一个简单的for循环,循环条件一直为真,也就是个死循环
//但是在循环体里头有控制退出循环的语句
{if((i%10)= =0)break; //这句和下句就是循环体,也就是i对10求余,如果
//余数为0,那么退出循环,否则i--
else i- -;
}
i+=11;a+=i; //i+=11是i=i+11的变形体
}
printf("%d\n",a);
}
结果你可以用编译器编译看
第5行的 for(;;) 是什么意思 不对循环进行条件控制 也就是说 如果循环语句里面没有break语句的话就会一直进行下去
第6行是什么意思 如果i对10的余数是零的话 就执行跳出语句break
第9行的i+=11;也不明白 等价与i=i+11;
输出结果是 32
第5行的 for(;;) 是什么意思
无限循环
第6行是什么意思
{if((i%10)= =0) break;
如果i除以10的余数等于0 就跳出循环
第9行的i+=11;也不明白
i+=11; 等效于 i = i + 11;
问这段程序的输出结果 32
for(;;) for中没有条件,必须有break才能结束循环
if((i%10)= =0)break; 如果i能被10整除(余数为0)则跳出循环
i+=11 就是i=i+11
第5行的 for(;;) 只是代表即将进行循环,没有说明条件。
第六行是说当i是10的整数倍时,即跳出第5行的 for(;;)循环
i+=11;等同于i=i+11;