Trong bài xích này họ sẽ học tập lệnh Switch Case vào C, đó là lệnh dùng để làm rẻ nhánh chương trình và nó tương tự với lệnh if else. Mặc dù nhiên, xét về tính thuận tiện thì if else vẫn ưu cố gắng hơn.

Bạn đang xem: Cách dùng switch case trong c#

*


*

Lệnh Switch Case nhìn dường như rườm rà, ko thực sự linh động trong vấn đề rẻ nhánh chương trình, bởi nó chỉ chất vấn đúng mỗi một đk mà thôi. Hãy tò mò về cú pháp trước nhé và có tác dụng vài lấy một ví dụ để minh chứng lời bản thân nói nhé.

1. Cú pháp Switch Case trong C

Cú pháp của chính nó như sau:


switch (expression)​ case constant1: // statements break; case constant2: // statements break; . . . Default: // default statements
Trong đó:

Bài viết này được đăng tại

expression là biểu thức đề xuất kiểm traMỗi case là một trong trường hợp, giả dụ biểu thức thỏa mãn ở case làm sao thì case đó sẽ tiến hành chạy. Và lệnh break ở mỗi case sẽ giúp thoát khỏi khối lệnh switch, tránh chứng trạng trình biên dịch chạy qua case tiếp theo.Trường hợp không tồn tại case nào cân xứng thì lệnh sinh hoạt default sẽ được chạy.

Như các bạn thấy, với cú pháp như vậy thì sẽ khá khó trong việc thực hiện nhiều lệnh lồng nhau. Bởi vì vậy đa số lập trình viên vẫn thích thực hiện if else hơn.

Tham khảo sơ đô buổi giao lưu của nó qua hình dưới đây.

Xem thêm: Hướng Dẫn Cách Dùng Wordpress Toàn Tập Từ A, Hướng Dẫn Wordpress Toàn Tập Từ A

Ví dụ: Viết ứng dụng máy tính cơ bản

Trong lấy một ví dụ này có thể chấp nhận được người sử dụng nhập vào nhì số cùng phép toán yêu cầu tính, cùng chỉ đồng ý các phép toán cộng, trừ, nhân, với chia.


#include int main() char operator; double n1, n2; printf("Nhập phép tính (+, -, *, /): "); scanf("%c", &operator); printf("Nhập hai số cân nặng tính: "); scanf("%lf %lf",&n1, &n2); switch(operator) case "+": printf("%.1lf + %.1lf = %.1lf",n1, n2, n1+n2); break; case "-": printf("%.1lf - %.1lf = %.1lf",n1, n2, n1-n2); break; case "*": printf("%.1lf * %.1lf = %.1lf",n1, n2, n1*n2); break; case "/": printf("%.1lf / %.1lf = %.1lf",n1, n2, n1/n2); break; // operator doesn"t match any case constant +, -, *, / default: printf("Error! operator is not correct"); return 0;
Theo như ví dụ như này thì nếu:

Nhập vệt + thì case đầu tiên sẽ được chạyNhập vết - thì case máy 2 sẽ tiến hành chạyNhập lốt * thì case thiết bị 3 sẽ tiến hành chạyNhập vệt / thì case thiết bị 4 sẽ tiến hành chạyNhập ký tự không giống thì đang chạy sinh hoạt default

Mình chạy cùng nhập một vài tài liệu thì công dụng có dạng như sau:


2. Biến đổi Switch case lịch sự If else

Bây giờ đồng hồ mình đã thực hiện biến đổi chương trình trên bằng cách thay ráng lệnh switch case thành lệnh if else. Tuy trông tất cả vẻ rườm rà nhưng xét đến code thì hết sức sáng sủa.


#include int main() char operator; double n1, n2; printf("Nhập phép tính (+, -, *, /): "); scanf("%c", &operator); printf("Nhập nhì số cân tính: "); scanf("%lf %lf",&n1, &n2); if (operator == "+") printf("%.1lf + %.1lf = %.1lf",n1, n2, n1+n2); else if (operator == "-") printf("%.1lf - %.1lf = %.1lf",n1, n2, n1-n2); else if (operator == "*") printf("%.1lf * %.1lf = %.1lf",n1, n2, n1*n2); else if (operator == "/") printf("%.1lf / %.1lf = %.1lf",n1, n2, n1/n2); else printf("Error! operator is not correct"); return 0;
Chạy lên các bạn sẽ nhận được kết quả tương trường đoản cú như phần 1.

Ngoài ra bạn có thể sử dụng lệnh switch case lồng nhau nhé, nhưng tránh việc bởi do vậy trông code hết sức rối. Thay vì đó bnạ hãy thực hiện lệnh if else lồng nhau sẽ tốt hơn.

Trên là kiến trang bị cơ phiên bản của lệnh Switch vào C, hứa găp lại các bạn ở bài tiếp theo nhé.






Tổng hòa hợp hơn 1000 bài bác tập C / C++ có giải mã

bài này vẫn tổng hòa hợp hơn 1000 bài tập C / C++ tất cả lời giải…