文章

第5天:循環與迴圈語法

課程簡介

在今天的課程中,我們將深入學習 C# 的循環與迴圈語法。迴圈是程式設計中的一個重要結構,允許我們在特定條件下重複執行某段程式碼。掌握迴圈的各種語法和應用,將能讓我們更有效率地處理重複性工作並簡化程式碼。


學習目標

  • 瞭解 for 迴圈的用法
  • 學習 while 迴圈的使用方式
  • 掌握 do-while 迴圈的應用
  • 學習 foreach 迴圈及其在陣列或集合中的作用

課程內容

1. for 迴圈

  • for 迴圈是最常用的迴圈之一,適合用於已知迴圈次數的情況。
  • 語法:
    1
    2
    3
    4
    
    for (初始化; 條件; 更新)
    {
        // 執行的程式碼
    }
    

範例

1
2
3
4
for (int i = 1; i <= 5; i++)
{
    Console.WriteLine("這是第 " + i + " 次執行");
}
  • 在此範例中,int i = 1 是初始化,i <= 5 是條件,i++ 是更新步驟。迴圈將重複執行 5 次,直到 i 超過 5 為止。

2. while 迴圈

  • while 迴圈適合用於需要根據條件來決定是否重複執行的情況。
  • 語法:
    1
    2
    3
    4
    
    while (條件)
    {
        // 執行的程式碼
    }
    

範例

1
2
3
4
5
6
7
int i = 1;

while (i <= 5)
{
    Console.WriteLine("這是第 " + i + " 次執行");
    i++;
}
  • 在此範例中,while 迴圈將重複執行直到 i 超過 5,並在每次迴圈執行後遞增 i

3. do-while 迴圈

  • do-while 迴圈至少會執行一次,然後再檢查條件。即使條件不成立,也會先執行迴圈內的程式碼。
  • 語法:
    1
    2
    3
    4
    
    do
    {
        // 執行的程式碼
    } while (條件);
    

範例

1
2
3
4
5
6
7
int i = 1;

do
{
    Console.WriteLine("這是第 " + i + " 次執行");
    i++;
} while (i <= 5);
  • 此範例中,無論 i 的初始值如何,do-while 迴圈至少會執行一次程式碼。

4. foreach 迴圈

  • foreach 迴圈專門用於遍歷集合(如陣列或清單),每次迭代都會自動取得集合中的下一個項目。
  • 語法:
    1
    2
    3
    4
    
    foreach (型態 變數 in 集合)
    {
        // 使用變數進行操作
    }
    

範例

1
2
3
4
5
6
string[] fruits = { "蘋果", "香蕉", "橘子" };

foreach (string fruit in fruits)
{
    Console.WriteLine(fruit);
}
  • 此範例中,foreach 迴圈會遍歷 fruits 陣列,並將每個項目依次存入 fruit,然後輸出到控制台。

迴圈控制關鍵字

break

  • break 用於提前結束迴圈。例如:
    1
    2
    3
    4
    5
    6
    7
    8
    
    for (int i = 1; i <= 10; i++)
    {
        if (i == 5)
        {
            break;
        }
        Console.WriteLine(i);
    }
    
  • i 等於 5 時,break 將結束迴圈,並停止後續的執行。

continue

  • continue 用於跳過當前迴圈的一次迭代並繼續執行下一次。例如:
    1
    2
    3
    4
    5
    6
    7
    8
    
    for (int i = 1; i <= 10; i++)
    {
        if (i % 2 == 0)
        {
            continue;
        }
        Console.WriteLine(i);
    }
    
  • 此範例中,當 i 是偶數時,continue 會跳過迴圈該次迭代並繼續下一次迴圈,只輸出奇數值。

實作練習

  1. 建立並執行程式
    • 開啟專案的 Program.cs 檔案,並加入以下程式碼:
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      49
      50
      51
      52
      53
      54
      55
      
      using System;
      
      class Program
      {
          static void Main(string[] args)
          {
              // for 迴圈
              Console.WriteLine("for 迴圈範例:");
              for (int i = 1; i <= 5; i++)
              {
                  Console.WriteLine("這是第 " + i + " 次執行");
              }
      
              // while 迴圈
              Console.WriteLine("\nwhile 迴圈範例:");
              int j = 1;
              while (j <= 5)
              {
                  Console.WriteLine("這是第 " + j + " 次執行");
                  j++;
              }
      
              // do-while 迴圈
              Console.WriteLine("\ndo-while 迴圈範例:");
              int k = 1;
              do
              {
                  Console.WriteLine("這是第 " + k + " 次執行");
                  k++;
              } while (k <= 5);
      
              // foreach 迴圈
              Console.WriteLine("\nforeach 迴圈範例:");
              string[] animals = { "貓", "狗", "兔子" };
              foreach (string animal in animals)
              {
                  Console.WriteLine(animal);
              }
      
              // break 和 continue
              Console.WriteLine("\nbreak 和 continue 範例:");
              for (int i = 1; i <= 10; i++)
              {
                  if (i == 5)
                  {
                      break; // 當 i 為 5 時跳出迴圈
                  }
                  if (i % 2 == 0)
                  {
                      continue; // 當 i 為偶數時跳過
                  }
                  Console.WriteLine(i);
              }
          }
      }
      
  2. 執行程式
    • 使用終端執行以下命令:
      1
      
      dotnet run
      
    • 視察輸出結果並觀察各種迴圈的效果。

教學重點

  • 瞭解並掌握各種迴圈語法(forwhiledo-whileforeach)。
  • 會使用 breakcontinue 控制迴圈執行流程。
  • 能夠選擇適合的迴圈結構來實現重複性程式碼的簡化。

在接下來的課程中,我們將學習 C# 的陣列與集合操作,並學習如何運用這些迴圈語法處理更複雜的資料集合!

本文章以 CC BY 4.0 授權