Trong hướng dẫn này, bạn sẽ học cách tạo câu lệnh switch trong lập trình C với sự trợ giúp của một ví dụ.
Câu lệnh switch 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ế.
Bạn có thể làm điều tương tự với if… else… if
cái thang. Tuy nhiên, cú pháp của switch
câu lệnh dễ đọc và dễ viết hơn nhiều.
Cú pháp của switch… case
switch (expression) ( case constant1: // statements break; case constant2: // statements break;… default: // default statements )
Câu lệnh switch hoạt động như thế nào?
Biểu thức được đánh giá một lần và so sánh với các giá trị của mỗi nhãn trường hợp.
- Nếu có khớp, các câu lệnh tương ứng sau nhãn khớp sẽ được thực thi. Ví dụ, nếu giá trị của biểu thức bằng hằng số2, các câu lệnh sau
case constant2:
sẽ được thực thi cho đến khibreak
gặp. - Nếu không khớp, các câu lệnh mặc định sẽ được thực thi.
Nếu chúng ta không sử dụng break
, tất cả các câu lệnh sau nhãn phù hợp sẽ được thực thi.
Nhân tiện, default
mệnh đề bên trong switch
câu lệnh là tùy chọn.
chuyển đổi Lưu đồ câu lệnh
Ví dụ: Máy tính đơn giản
// Program to create a simple calculator #include int main() ( char operator; double n1, n2; printf("Enter an operator (+, -, *, /): "); scanf("%c", &operator); printf("Enter two operands: "); 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; )
Đầu ra
Nhập toán tử (+, -, *,): - Nhập hai toán hạng: 32,5 12,4 32,5 - 12,4 = 20,1
Toán tử - do người dùng nhập được lưu trữ trong biến toán tử. Và, hai toán hạng 32,5 và 12,4 lần lượt được lưu trong các biến n1 và n2.
Vì nhà điều hành là -
điều khiển chương trình chuyển sang
printf ("%. 1lf -% .1lf =% .1lf", n1, n2, n1-n2);
Cuối cùng, câu lệnh break kết thúc switch
câu lệnh.