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?: 
Average: 6 (2 votes)
Ả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.

Bình luận (0)

 

Add Comment

Filtered HTML

  • Các địa chỉ web và email sẽ tự động được chuyển sang dạng liên kết.
  • Các thẻ HTML được chấp nhận: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Tự động ngắt dòng và đoạn văn.

Plain text

  • No HTML tags allowed.
  • Các địa chỉ web và email sẽ tự động được chuyển sang dạng liên kết.
  • Tự động ngắt dòng và đoạn văn.
CAPTCHA
This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.

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

 
Cài đặt Dropbox trên "ngọn lửa" Kindle Fire của Amazon

Cài đặt Dropbox trên "ngọn lửa" Kindle Fire của Amazon

Bạn đang có ý muốn truy cập tất cả các tập tin trên "ngọn lửa" Kindle Fire của Amazon từ tài khoản Dropbox.

Hiển thị thứ hạng Alexa cho website Drupal bằng module Alexa4drupal

Hiển thị thứ hạng Alexa cho website Drupal bằng module Alexa4drupal

Trong bài viết Thêm sắc màu cho web site Joomla! của bạn (Phần 1) đã có giới thiệu về cách sử dụng My Alexa Data để có thể hiện thị thứ hạng của Alexa cho website trên Joomla! nhưng hôm nay chúng tôi sẽ giới thiệu cách hiện thị thứ hạng Alexa trên một website bằng Drupal (giống như giao diện mới hiện tại của thông tin công nghệ được xây dựng trên Drupal).

Mạng xã hội Twitter tròn 6 tuổi

Mạng xã hội Twitter tròn 6 tuổi

Cách đây 6 năm, ngày 21/3/2006, Jack Dorsey đã "tweet" đầu tiên trên mạng xã hội Twitter. Kể từ đó cho đến nay, Twitter trở thành một dịch vụ tin nhắn ngắn, mạng xã hội yêu thích của các nhân vật nổi tiếng toàn cầu.

Công ty diệt chuột T&C

 

Diet con trung