2026-05-10 C# 實戰練習固控制流語句的知識
2026-05-10 C# 實戰練習固控制流語句的知識
我:
實戰練習
讓我們來做一些練習,幫助你鞏固控制流語句的知識:
練習 1:使用 if-else 語句
定義一個變數 score,值為 75。
使用 if-else 判斷 score 是否大於等於 60,
如果是,輸出「及格」,否則輸出「不及格」。
int score = 75;
if (score >=60)
{
Console.WriteLine($”分數:{score} 及格”);
}
else
{
Console.WriteLine($”不及格”);
}
練習 2:使用 switch 語句
定義一個變數 dayOfWeek,值為 “Friday”。
使用 switch 判斷星期幾,如果是 “Monday”,輸出「星期一」,如果是 “Friday”,輸出「星期五」,其他情況輸出「未知的星期」。
string dayOfWeek = “Friday”;
switch (dayOfWeek)
{
case “Monday”:
Console.WriteLine(“星期一”);
break;
case “Friday”:
Console.WriteLine(“星期五”);
break;
default:
Console.WriteLine(“未知的星期”);
break;
}
練習 3:使用 for 迴圈
使用 for 迴圈從 1 到 10,輸出所有的數字。
for(int i= 1; i<=10; i++)
{
Console.WriteLine($"i = {i}");
}
練習 4:使用 while 迴圈
定義一個變數 counter,值為 1。
使用 while 迴圈,當 counter 小於等於 5 時輸出 counter,每次輸出後增加 1。
int counter = 1;
while (counter <=5)
{
Console.WriteLine($”counter: {counter}”);
counter++;
}
問題
問題: if-else 語句和 switch 語句有什麼區別?什麼時候應該用 switch?
回答:
if-else 語句和 switch 的區別: if-else 適用在單一判斷, switch 可以多值判斷
例如:
//if-else
bool loginOk = false;
if (loginOk)
{
Console.WriteLine("登入成功!");
}
else
{
Console.WriteLine("登入失敗!");
}
//switch
string messageColor = "green";
switch(messageColor)
{
case "blue":
Console.WriteLine("藍色...一般訊息");
break;
case "green":
Console.WriteLine("綠色....通過!");
break;
case "red":
Console.WriteLine("紅色....失敗!!!");
break;
case "orange":
Console.WriteLine("橘色....警告!!!");
break;
default:
Console.WriteLine("未知的訊息!!!!");
break;
}
//綠色....通過!
問題: while 和 do -while 迴圈的主要區別是什麼?
回答:
while是 當條件成立時, 開始跑迴圈
do -while 無論條件是否成立, 都會跑一次迴圈
例如:
//while
int counter_1 = 1;
while (counter_1 <= 3)
{
Console.WriteLine($"counter_1: {counter_1}");
counter_1++;
}
//counter_1: 1
//counter_1: 2
//counter_1: 3
//do -while
int counter_2 = 1;
do
{
Console.WriteLine($"counter_2: {counter_2}");
counter_2++;
}while (counter_2 <= 3);
//counter_2: 1
//counter_2: 2
//counter_2: 3
GPT:
你的回答和代碼都非常好!你成功完成了對控制流語句的練習,也正確回答了相關的問題,展示了對各種控制流語句的理解。以下是一些補充和改進,使你的答案更加清晰和準確。
改進和補充
語法與敘述調整
- 在
if-else和switch的回答中,可以更詳細地說明它們的適用場景,以便更好地理解什麼情況下應該選擇使用哪種語句。 - 在
while和do-while的範例中,可以補充它們的運行順序差異,以便強調兩者的不同。
- 在
修正後的答案
練習部分
你的代碼是完全正確的,這裡是完整的代碼示例:
1 | // 練習 1:使用 if-else 語句 |
問題回答
問題 1:if-else 語句和 switch 語句有什麼區別?什麼時候應該用 switch?
回答:
if-else語句 適用於根據不同的條件進行判斷,通常適合於處理單一或複雜的邏輯表達式。例如,如果條件是布林值(true或false),或者條件是由多個比較和邏輯組合而成,if-else更為合適。範例:
1
2
3
4
5
6
7
8
9bool loginOk = false;
if (loginOk)
{
Console.WriteLine("登入成功!");
}
else
{
Console.WriteLine("登入失敗!");
}switch語句 適用於多值選擇的情況,通常是當需要對一個變數進行多個可能值的判斷時使用,例如枚舉類型或一組特定的字串常量。這種語句在處理多個可能的選擇時比if-else更直觀和清晰。範例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20string messageColor = "green";
switch (messageColor)
{
case "blue":
Console.WriteLine("藍色...一般訊息");
break;
case "green":
Console.WriteLine("綠色....通過!");
break;
case "red":
Console.WriteLine("紅色....失敗!!!");
break;
case "orange":
Console.WriteLine("橘色....警告!!!");
break;
default:
Console.WriteLine("未知的訊息!!!!");
break;
}- 輸出:綠色….通過!
總結:
- 當條件較複雜或涉及多個布林運算時,使用
if-else。 - 當需要針對一個值的多種可能性進行選擇時,使用
switch更合適。
問題 2:while 和 do-while 迴圈的主要區別是什麼?
回答:
while迴圈:在執行迴圈內的代碼之前會先檢查條件是否為true。只有當條件為true時,才會進行迴圈。如果條件一開始就是false,那麼迴圈一次也不會執行。範例:
1
2
3
4
5
6int counter_1 = 1;
while (counter_1 <= 3)
{
Console.WriteLine($"counter_1: {counter_1}");
counter_1++;
}輸出:
1
2
3counter_1: 1
counter_1: 2
counter_1: 3
do-while迴圈:首先執行迴圈內的代碼,然後再檢查條件是否為true。無論條件最初是否成立,do-while迴圈至少會執行一次。範例:
1
2
3
4
5
6int counter_2 = 1;
do
{
Console.WriteLine($"counter_2: {counter_2}");
counter_2++;
} while (counter_2 <= 3);輸出:
1
2
3counter_2: 1
counter_2: 2
counter_2: 3
總結:
while迴圈在條件成立時進行,可能一次都不執行。do-while迴圈至少執行一次,然後根據條件繼續決定是否繼續。
小結
- 你成功完成了對
if-else、switch、for、while和do-while的練習,非常棒! if-else和switch都是條件判斷語句,但switch更適合用於多個值選擇的情況。while和do-while都是迴圈語句,但do-while至少執行一次,while則可能一次也不執行。
接下來,如果你準備好了,我們可以進入第五階段,學習 方法和函數的定義與使用,這是讓你的代碼更為模組化和可重用的重要部分。如果有任何不清楚的地方,隨時告訴我!