Re: [問題] i+1 和 i++ 不是一樣嗎?

看板C_and_CPP (C/C++)作者 (sjgau)時間16年前 (2009/08/21 09:41), 編輯推噓0(003)
留言3則, 1人參與, 最新討論串3/3 (看更多)
建議原 po 從下面這個求總和的程式下手 sum= 1 + 2 + . . . + no= ? 然後,一定要加上 後面驗算的程序, xsum= (上底 + 下底) * (高) / 2 高,就是 項數。 然後,更改 i++ 變成 i+1 看看,答案是否會相同? // file: get-sum.cpp #include <stdio.h> #include <process.h> int main() { int no, sum, i; no= 100; sum= 0; for (i=1;i<=no;i++) { sum+= i; } printf("\n\n no= %d, sum= %d\n", no, sum); system("pause"); // ------------------------------------------ // get real sum of no double xsum; xsum= (1.0 + no)*(no - 1.0 + 1.0)/2.0; printf("\n\n no= %d, xsum= %.3lf\n", no, xsum); system("pause"); return(0); } ※ 引述《Euler (http://0rz.tw/bd3Jx )》之銘言: : http://nopaste.info/79f8614fc1.html : 這是我寫的程式 : for迴圈裏面 : i+1 和 i++兩個結果不一樣耶 : 而且我也不懂為什麼i++並不是我要的結果 : 請問我的盲點在哪裡呢 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 60.245.110.241

08/21 12:50, , 1F
然後,把 no --> 改成 100萬,看看答案會如何?Why?
08/21 12:50, 1F

08/21 15:49, , 2F
把 no --> 改成 20億,除了看答案之外,再看看時間?
08/21 15:49, 2F

08/21 15:51, , 3F
把 no 改成 200億,看看計算時間是否為10倍?Why not?
08/21 15:51, 3F
文章代碼(AID): #1AZVjGtH (C_and_CPP)
文章代碼(AID): #1AZVjGtH (C_and_CPP)