Lệnh switch case trong c

Trong bài này chúng ta đã học tập lệnh Switch Case trong C, đó là lệnh dùng để làm rẻ nhánh lịch trình và nó gần giống cùng với lệnh if else. Tuy nhiên, xét về tính tiện lợi thì if else vẫn ưu cụ rộng.

Bạn đang xem: Lệnh switch case trong c

Lệnh Switch Case nhìn có vẻ như xộc xệch, không đích thực linh động vào việc tốt nhánh chương trình, bởi vì nó chỉ soát sổ đúng từng một điều kiện cơ mà thôi. Hãy tò mò về cú pháp trước nhé với làm cho vài ví dụ để chứng tỏ lời bản thân nói nhé.


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

expression là biểu thức cần kiểm traMỗi case là một trong ngôi trường phù hợp, nếu biểu thức thỏa mãn nhu cầu sinh sống case như thế nào thì case đó sẽ tiến hành chạy. Và lệnh break nghỉ ngơi mỗi case để giúp đỡ ra khỏi kăn năn lệnh switch, tránh chứng trạng trình biên dịch chạy qua case tiếp theo sau.Trường vừa lòng không tồn tại case làm sao phù hợp thì lệnh ngơi nghỉ default sẽ được chạy.

Nlỗi chúng ta thấy, với cú pháp như vậy thì sẽ khá cực nhọc trong việc triển khai các lệnh lồng nhau. Vì vậy đa phần lập trình viên vẫn mê thích thực hiện if else hơn.

Tsi mê khảo sơ đô hoạt động của nó qua hình dưới đây.

Xem thêm: Nghĩa Của Từ Tab Trong Word Là Gì? Cách Sử Dụng Tab Trong Word Phần #1

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


Trong ví dụ này cho phép người tiêu dùng nhập lệ hai số cùng phép toán yêu cầu tính, và chỉ còn đồng ý những phxay tân oán cộng, trừ, nhân, cùng chia.


#include int main() char operator; double n1, n2; printf("Nhập phnghiền 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ụ này thì nếu:

Nhập vệt + thì case đầu tiên sẽ được chạyNhập dấu - thì case thứ hai sẽ tiến hành chạyNhập vết * thì case trang bị 3 sẽ tiến hành chạyNhập lốt / thì case thứ 4 sẽ tiến hành chạyNhập cam kết trường đoản cú khác thì đang chạy ở default

Mình chạy và nhập một vài ba tài liệu thì kết quả gồm dạng nlỗi sau:


2. Chuyển thay đổi Switch case lịch sự If else

Bây giờ đồng hồ bản thân đang triển khai biến đổi chương trình trên bằng cách thay thế sửa chữa lệnh switch case thành lệnh if else. Tuy trông có vẻ như lướt thướt nhưng lại xem về code thì vô cùng đầy niềm tin.


#include int main() char operator; double n1, n2; printf("Nhập phnghiền tính (+, -, *, /): "); scanf("%c", &operator); printf("Nhập hai 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;

Trong khi chúng ta cũng có thể sử dụng lệnh switch case lồng nhau nhé, nhưng không nên bởi những điều đó trông code hết sức rối. Ttốt vì chưng kia bnạ hãy thực hiện lệnh if else lồng nhau vẫn tốt rộng.

Trên là con kiến sản phẩm cơ bản của lệnh Switch vào C, hứa găp lại chúng ta sinh sống bài tiếp theo sau nhé.

Xem thêm: Design Science: Mathtype Untuk Windows 10, 8, 7, Design Science: Mathtype

Bình luận đã đóng góp, nếu gồm vướng mắc hãy đặt thắc mắc trên hoicode.com nhằm admin trả lời.


2020 - i-google-map.com. All Right Reserved Theme GoodNews, căn cơ Codeigniter, VPS thiết lập trên Tinohost
*


Nếu bạn phạt hiện lỗi không nên link, câu chữ sai, hay là một lỗi bất kể nào kia bên trên trang này thì hãy cho bạn biết nhé. Cám ơn bạn!


Chuyên mục: Công nghệ