i++在上面對(duì)我明白,在下面也對(duì)是怎么回事?是我對(duì)i++執(zhí)行順序錯(cuò)了?如果上面代碼對(duì),下面代碼也應(yīng)該對(duì),是慕課網(wǎng)的問(wèn)題嗎?
#include?<stdio.h> int?main() { ????/*?小伙伴們: ???????????選擇你們認(rèn)為最合理的循環(huán)結(jié)構(gòu)完成功能吧?*/ ????int?sum?=?0;??//定義計(jì)算結(jié)果變量sum ????int?i?=?1;????//定義循環(huán)數(shù)字變量i ????int?flag?=?1;?//定義符號(hào)狀態(tài)變量flag ????while(i<=100) ????{ ????????//i++;放在這里明白 ????????sum=sum+flag*i; ????????flag=-flag; ????????i++;//這里不明白 ????}? ????printf("sum=%d\n",sum);? ???? ????return?0;???? }
2018-01-23
運(yùn)行錯(cuò)誤
2018-01-29
感覺(jué)應(yīng)該是在下面對(duì)
2018-01-23
?
while
(i<=100)
????
{
????????
//i++;放在這里明白
????????
sum=sum+flag*i;
????????
flag=-flag;
????????
i++;
//這里不明白
????
}?
第一次循環(huán)的時(shí)候i取1,第二次是2,一直取到i=100,放前面和后面一樣,因?yàn)閕++,放前面,第一次也是i取1,下一次循環(huán)使用的時(shí)候就是2了,i++放循環(huán)體的任何位置都可以了,如果你是++i放前面了,那第一次就是取2了,把++i放后面前面的i第一次也是取1.
2018-01-21
不一樣的,c語(yǔ)言在編譯運(yùn)行的時(shí)候是按順序執(zhí)行的,所以你把i++放在前面和后面時(shí),i對(duì)應(yīng)的初始值和末數(shù)值是不一樣的,你可以自己拿一張草稿紙按照程序的順序執(zhí)行,你會(huì)明白的
2018-01-21
2018-01-21
你們有沒(méi)有編譯器?試下運(yùn)行是不是錯(cuò)的.