for(i=2;i==0;)
printf("%d",i--);
这个for语句是什么意思。。正常for语言不是应该for(;;;) 这样么。这个少了一个那么第一个i=2 是给i一个值,那么第二个i呢?做判定用的么?
这个是怎么运行的 答案为什么是0
for(i=2;i==0;)
printf("%d",i--);
这个for语句是什么意思。。正常for语言不是应该for(;;;) 这样么。这个少了一个那么第一个i=2 是给i一个值,那么第二个i呢?做判定用的么?
这个是怎么运行的 答案为什么是0
正常for语言是应该for(; ;)
for(i=2;i==0;)
printf("%d",i--);
开始 i=2 判断 i==0 结果为 假,就不执行printf("%d",i--);了
结果没用东西
这是没问题的,首先给1赋初值为2,然后判定i是否等于0,不等于0就继续执行循环里面的
printf("%d",i--);这时候执行一次i就自减1,这样等到i=0的时候循环就终止了;
没错for(;;;)是该这样,但是编程是个灵活的事情,书上没有说必需三部分都全要写,因此,可以根据情况省略其中的某些,一般第2个不省,1、3均可省略,本题是省略了第3项。
一个for语句,只要括号中包括两个分号就可以成为一个循环,for(i=2;i==0;)这也是一个循环嘛,只是在最后一个分号后面没有写操作而已,for中的第一条语句是给i初始化,把2赋给i,然后一个判断语句,如果i=0,执行for里面的内容,若没有,跳出循环,你这条语句应该没有打印内容吧?怎么会是0呢?因为i=2时,不满足i=0啊?