作者ucecic (從心開始!)
看板C_Sharp
標題[問題] 晚安各位先進,新手請教自修看書不了解的地方,謝謝!
時間Thu Nov 12 01:21:50 2009
各位先進晚安,小弟自修的時候卡關了,請各位先進體諒我問的新手問題,請不要鞭我
新手最需要的是鼓勵、愛和關懷~啦太多了,直接切正題,先謝謝大家的幫忙~
題目:為我的程式新增迴圈
在form裡增加一個button
寫法如下:
private void button_Click(object sender, EventArgs e)
{
int count = 0;
while (count < 10)
{
count = count + 1;
}
for (int i = 0; i < 5; i++)
{
count = count - 1;
}
MessageBox.Show("The answer is " + count);
}
問題1:我試著判斷方框會出現什麼數字,我的認知是它會跑五次,
第一次 0 -1=-1 (因為count = count-1)
第二次 1 -1=0
第三次 2 -1=1
第四次 3 -1=2
第五次 4 -1=3 所以方框出現是"5"
但是為什麼我在for (int i = 0; i < ???; i++) ???輸入1的時候
方框出現是"9"?
???輸入11的時候
方框出現是"-1"?
請各位先進教我怎麼解讀,好嗎?
問題2:為什麼在???輸入11,不會跟while(count<10)這個條件衝突呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.132.214.145
推 patw:A1-1: 跑完第一個 while 之後的 count 為 10 11/12 01:43
→ patw:for 你設的條件 ??? 為 1 時, 此 for 迴圈只跑一次, 11/12 01:44
→ patw:故 10 - 1 = 9。 A1-2 你可以自己想想看 :p 11/12 01:44
→ patw:A2: while 是當 count<10 時就跑 while 迴圈內的東西, 11/12 01:46
→ patw:跑完之後他的任務就結束了, 就該 for 迴圈了 :P 11/12 01:47
→ patw:大概是這樣, 希望沒有解錯, 轉學 C# 的新手 ;) 11/12 01:48
→ ucecic:patw謝啦~清楚了許多 還有寄信來的gameboy12,也謝謝你啦 11/12 01:56
推 chengchieh:你要的結果應該是把for迴圈包在while迴圈內... 11/12 16:31
→ chengchieh:目前的運行是前後兩個迴圈分開跑 11/12 16:31
→ chengchieh:輸出的部分也是要包進去... 11/12 16:31
推 colset:你要的結果就是巢狀迴圈的觀念而已 你寫的這個只是2個獨立 11/13 23:55
→ colset:迴圈,並非巢狀迴圈 11/13 23:55