第1个回答 2008-09-04
一、语句必须以分号结束,这个for后面的分号,代表空循环,如果不加分号,则下面printf("%d\n",s); 为循环体。
二、同行语句从左到右执行,i++,s+=i,i++自加,没能赋值,因此这边不管是i++,还是++i,最终,s+=i的时候i已经加1了。如果要理解前加与后加,应该是s+=i++;的时候i才存在前加与后加。
三、VC++可以使用printf,需包含头文件#include <stdio.h>
第2个回答 2008-09-04
一、如果for语句后面加分号,这时候只做for语句里的循环,其他不做,也就是循环了2次,第一次(s=2,i=2),第二次(s=5,i=3)。一般for语句后面不直接加分号,因为没意义。
二、i++是先用原值,然后再加;++i是先加后用。
三、VisualC++软件里能使用printf语句,因为C++语言向下兼容C语言。
第3个回答 2008-09-04
一个循环结束就的有;也可以说是一个语句结束后有;第二个问题i++就是说运行i后i自加1运行i后是什么呢?s+=i又运行了i所以变成2,还有一个是++i就是说先加1再计算下面的。上面的是c,环境变了,但语法不变,还有不明白的可以再问我,我们一起讨论下,二级其实不用紧张抽到好题很简单,抽到难题,不过关。
第4个回答 2008-09-04
你格式不正确for循环的基本格式是 for(<初始化>;<条件表达式>;<增量>)
所以你分号多了,还有就是结尾不用“;”。