Tự học C++: Cấu trúc lựa chọn: switch

Tự học C++: Cấu trúc lựa chọn: switch

Cú pháp của lệnh switch hơi đặc biệt một chút. Mục đích của nó là kiểm tra một vài giá trị hằng cho một biểu thức, tương tự với những gì chúng ta làm ở đầu bài này khi liên kết một vài lệnh if và else if với nhau. Dạng thức của nó như sau:

switch (expression) {
case constant1:
block of instructions 1
break;
case constant2:
block of instructions 2
break;
.
.
.
default:
default block of instructions
}

Nó hoạt động theo cách sau: switch tính biểu thức và kiểm tra xem nó có bằng constant1 hay không, nếu đúng thì nó thực hiện block of instructions 1 cho đến khi tìm thấy từ khoá break, sau đó nhảy đến phần cuối của cấu trúc lựa chọn switch. Còn nếu không, switch sẽ kiểm tra xem biểu thức có bằng constant2 hay không. Nếu đúng nó sẽ thực hiện block of instructions 2 cho đến khi tìm thấy từ khoá break. Cuối cùng, nếu giá trị biểu thức không bằng bất kỳ hằng nào được chỉ định ở trên (bạn có thể chỉ định bao nhiêu câu lệnh case tuỳ thích), chương trình sẽ thực hiện các lệnh trong phần default: Nếu nó tồn tại vì phần này không bắt buộc phải có.

Hai đoạn mã sau là tương đương:

Ví dụ switch If-else tương đương
switch (x) {

case 1:

cout << “x is 1″;

break;

case 2:

cout << “x is 2″;

break;

default:

cout << “value of x unknown”;

}

if (x == 1) {

cout << “x is 1″;

}else if (x == 2) {

cout << “x is 2″;

}else {

cout << “value of x unknown”;

}

Chú ý sự tồn tại của lệnh break ở cuối mỗi khối lệnh. Điều này là cần thiết vì nếu không thì sau khi thực hiện block of instructions 1 chương trình sẽ không nhảy đến cuối của lệnh switch mà sẽ thực hiện các khối lệnh tiếp theo cho đến khi nó tìm thấy lệnh break đầu tiên. Điều này khiến cho việc đặt cặp ngoặc nhọn { } trong mỗi trường hợp là không cần thiết và có thể được dùng khi bạn muốn thực hiện một khối lệnh cho nhiều trường hợp khác nhau, ví dụ:

switch (x) {

case 1:

case 2:

case 3:

cout << “x is 1, 2 or 3″;

break;

default:

cout << “x is not 1, 2 nor 3″;

}

Chú ý rằng lệnh switch chỉ có thể được dùng để so sánh một biểu thức với các hằng. Vì vậy chúng ta không thể đặt các biến (case (n*2):) hay các khoảng (case (1..3):) vì chúng không phải là các hằng hợp lệ.

Nếu bạn cần kiểm tra các khoảng hay nhiều giá trị không phải là hằng số hãy kết hợp các lệnh if và else if.

(Theo OurViet Network)

 

Bạn thấy bài viết này như thế nào?: 
No votes yet
Ảnh của Binh Tran Thanh

Drupal Consultant

Started my career as a drupal8 developer in EM Solutions . I love learning Web technologies like HTML, CSS, PHP, Jquery Ajax and Drupal backend . Currently working as a drupal backend developer.

Quảng cáo việc làm

 

Thích hợp các bạn nữ mảng thợ may làm việc tại nước NGA

Đơn hàng Tuyển dụng 100 Thợ may đi Nga(đợt 1 tháng 3.2021, đợt 2 tháng 5.2021). Lương thực lãnh 800 USD, bao ăn ở, vé máy bay và visa, phí xuất cảnh(1800 USD)trả khi đi làm có lương. Bạn có thể liên hệ CÔNG TY qua Phone/Zalo: (+84) 944 225 212. Công ty sẽ tư vấn cho bạn.

Xem chi tiết: >>> https://bit.ly/3o9NOfR

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Làm phim quảng cáo viral – Xu hướng phim quảng cáo thời mạng xã hội

Làm phim quảng cáo viral – Xu hướng phim quảng cáo thời mạng xã hội

Làm phim quảng cáo (TVC) muốn bắt kịp kỷ nguyên mạng xã hội với  “Like, Share, Comment”, thì cần thấu hiểu hành vi người tiêu dùng. Thấu hiểu, nắm bắt thị trường, xu hướng xã hội…

Chạy Android trên Netbook hoặc Desktop

Chạy Android trên Netbook hoặc Desktop

Android đang là hệ điều hành số một trên các thiết bị di động. Là một người yêu công nghệ chắc hẳn bạn cũng muốn dùng thử qua hệ điều hành này.

Cấu hình Varnish để nâng cao hiệu suất cho Web Servers

Cấu hình Varnish để nâng cao hiệu suất cho Web Servers

Varnish is a very popular software package that can dramatically accelerate the work of serving HTTP pages.