看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Dev C++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 副程式執行問題 餵入的資料(Input): 如題目 預期的正確結果(Expected Output): 錯誤結果(Wrong Output): 程式碼(Code):(請善用置底文網頁, 記得排版) (1) int main(){ int a=1; while(a<3){ printf("*"); a+=1; } do{ printf("*"); a+=1; }while(a<6); return 0; } 我預計輸出會是 ****** 結果卻是 ***** 少了一個* (2) int i,j=2; if(j=5) for(i=0;j>=i;i++) printf("*\n"); 想問一下這段程式for迴圈是會執行幾次呢? 我是覺得會執行3次 但是書本寫說會執行6次 請問怎麼判斷呢?? 補充說明(Supplement): 以上兩題希望高手能幫幫!!謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.27.125.49 ※ 編輯: APE36 來自: 114.27.125.49 (03/13 13:33)
loveflames:第2題的if.... 03/13 13:37
題目是這樣的 沒錯!! ※ 編輯: APE36 來自: 114.27.125.49 (03/13 13:41)
loveflames:第1題5個*是對的,自己把每次的a值寫出來就知道 03/13 13:43
loveflames:我不是跟你說題目有錯,我是在說那裡是解題關鍵 03/13 13:44
loveflames:在想迴圈跑幾次之前,得先搞懂j=5是什麼 03/13 13:48
那邊不是判斷式嗎?? 還是說j就是直接等於 5 給他?? ※ 編輯: APE36 來自: 114.27.125.49 (03/13 13:51)
loveflames:就是直接等於5,5非0,所以if為真 03/13 13:55
GoalBased:其實這個東西 你中斷點去看 就可以懂了 03/13 17:21
GoalBased: j == 5 才是判斷 j = 5 是給值 03/13 17:22
haoboo:是說這跟副程式也無關吧,應該是迴圈的運用 03/13 20:22
xxxx9659:沒縮排... 03/14 13:25
k556670741:你要印6個*把a設成0就好了阿.... 03/15 19:46