C ++ switch ... case Statement (Với các ví dụ)

Trong hướng dẫn này, chúng ta sẽ tìm hiểu về câu lệnh switch và hoạt động của nó trong lập trình C ++ với sự trợ giúp của một số ví dụ.

Câu switchlệnh cho phép chúng tôi thực thi một khối mã trong số nhiều lựa chọn thay thế.

Cú pháp của switchcâu lệnh trong C ++ là:

 switch (expression) ( case constant1: // code to be executed if // expression is equal to constant1; break; case constant2: // code to be executed if // expression is equal to constant2; break;… default: // code to be executed if // expression doesn't match any constant )

Câu lệnh switch hoạt động như thế nào?

Giá trị expressionđược đánh giá một lần và so sánh với các giá trị của mỗi casenhãn.

  • Nếu có khớp, mã tương ứng sau khi nhãn khớp sẽ được thực thi. Ví dụ, nếu giá trị của biến bằng constant2, mã sau case constant2:sẽ được thực thi cho đến khi breakgặp câu lệnh.
  • Nếu không khớp, mã sau default:sẽ được thực thi.

Lưu ý : Chúng ta có thể làm điều tương tự với if… else… ifcái thang. Tuy nhiên, cú pháp của switchcâu lệnh gọn gàng hơn và dễ đọc và dễ viết hơn nhiều.

Lưu đồ của câu lệnh switch

Lưu đồ của C ++ switch… case statement

Ví dụ: Tạo Máy tính bằng cách sử dụng Câu lệnh chuyển đổi

 // Program to build a simple calculator using switch Statement #include using namespace std; int main() ( char oper; float num1, num2; cout <> oper; cout << "Enter two numbers: " <> num1>> num2; switch (oper) ( case '+': cout << num1 << " + " << num2 << " = " << num1 + num2; break; case '-': cout << num1 << " - " << num2 << " = " << num1 - num2; break; case '*': cout << num1 << " * " << num2 << " = " << num1 * num2; break; case '/': cout << num1 << " / " << num2 << " = " << num1 / num2; break; default: // operator is doesn't match any case constant (+, -, *, /) cout << "Error! The operator is not correct"; break; ) return 0; )

Đầu ra 1

 Nhập toán tử (+, -, *, /): + Nhập hai số: 2.3 4.5 2.3 + 4.5 = 6.8

Đầu ra 2

 Nhập toán tử (+, -, *, /): - Nhập hai số: 2.3 4.5 2.3 - 4.5 = -2.2

Đầu ra 3

 Nhập toán tử (+, -, *, /): * Nhập hai số: 2.3 4.5 2.3 * 4.5 = 10.35

Đầu ra 4

 Nhập toán tử (+, -, *, /): / Nhập hai số: 2.3 4.5 2.3 / 4.5 = 0.511111

Đầu ra 5

Nhập toán tử (+, -, *, /):? Nhập hai số: 2.3 4.5 Error! Nhà điều hành không đúng.

Trong chương trình trên, chúng ta đang sử dụng switch… casecâu lệnh để thực hiện các phép tính cộng, trừ, nhân và chia.

Chương trình này hoạt động như thế nào

  1. Đầu tiên chúng tôi nhắc người dùng nhập toán tử mong muốn. Đầu vào này sau đó được lưu trữ trong charbiến có tên oper.
  2. Sau đó, chúng tôi nhắc người dùng nhập hai số, được lưu trữ trong các biến số float là num1 và num2.
  3. Sau đó, switchcâu lệnh được sử dụng để kiểm tra toán tử do người dùng nhập:
    • Nếu người dùng nhập +, phép cộng được thực hiện trên các số.
    • Nếu người dùng nhập -, phép trừ được thực hiện trên các số.
    • Nếu người dùng nhập *, phép nhân được thực hiện trên các số.
    • Nếu người dùng nhập /, phép chia được thực hiện trên các số.
    • Nếu người dùng nhập bất kỳ ký tự nào khác, mã mặc định sẽ được in.

Lưu ý rằng breakcâu lệnh được sử dụng bên trong mỗi casekhối. Điều này kết thúc switchtuyên bố.

Nếu breakcâu lệnh không được sử dụng, tất cả các trường hợp sau câu lệnh đúng casesẽ được thực thi.

thú vị bài viết...