Computer >> Máy Tính >  >> Lập trình >> C ++

Chuyển câu lệnh C ++

Cách sử dụng câu lệnh Switch trong C ++

Câu lệnh điều kiện là một đặc điểm chung của tất cả các ngôn ngữ lập trình. Các câu lệnh này được sử dụng để kiểm soát luồng chương trình và chỉ định khi nào các khối mã cụ thể nên được thực thi.

Các câu lệnh điều kiện chính được sử dụng trong C ++ là if if … else các câu lệnh. Ngoài ra, C ++ cung cấp switch tuyên bố. Câu lệnh này đánh giá một biểu thức so với nhiều trường hợp tiềm năng và thực thi một khối mã nếu biểu thức khớp với trường hợp tương ứng của khối đó. Câu lệnh switch hoạt động tương tự như một if câu lệnh bao gồm nhiều if … else tuyên bố.

Trong hướng dẫn này, chúng ta sẽ thảo luận — bao gồm cả một ví dụ — cách sử dụng câu lệnh switch trong C ++. Chúng ta cũng sẽ thảo luận về cách sử dụng breakdefault từ khóa với câu lệnh switch. Sau khi đọc hướng dẫn này, bạn sẽ trở thành một chuyên gia trong việc sử dụng câu lệnh switch C ++.

Các câu lệnh có điều kiện trong C ++

Các câu lệnh có điều kiện như if if … else được sử dụng để đưa ra quyết định trong một chương trình. Ví dụ:một if câu lệnh có thể hướng dẫn chương trình chạy một khối mã nếu người dùng trên 16 tuổi hoặc nếu đó là thứ Tư.

if if … else câu lệnh là dạng câu lệnh điều kiện phổ biến nhất. if if … else câu lệnh chạy một khối mã nếu một điều kiện là đúng; nếu không, họ không làm gì cả. Đây là ví dụ về C ++ if tuyên bố:

int age = 15;

if (age > 16) {
	cout<<"This user is over the age of 16."
}

Trong ví dụ này, mã của chúng tôi đánh giá xem độ tuổi của biến có lớn hơn 16. Nếu đúng, câu This user is over the age of 16 . được in ra bảng điều khiển; nếu không, không có gì xảy ra. Trong trường hợp này, người dùng của chúng tôi 15 tuổi, vì vậy age > 16 đánh giá thành false. Do đó, chương trình không thực thi mã được liên kết với if của chúng tôi tuyên bố.

Nhưng nếu bạn muốn đánh giá dựa trên nhiều điều kiện thì sao?

Đó là nơi xuất hiện câu lệnh switch. Mặc dù bạn có thể sử dụng if … else câu lệnh để đánh giá nhiều điều kiện trong một if tuyên bố, cách tiếp cận này có thể không hiệu quả và làm cho mã của bạn khó đọc hơn. Vì vậy, các nhà phát triển thường sử dụng các câu lệnh switch để đánh giá một câu lệnh đối với nhiều trường hợp tiềm năng.

81% người tham gia cho biết họ cảm thấy tự tin hơn về triển vọng công việc công nghệ của mình sau khi tham gia chương trình đào tạo. Kết hợp với bootcamp ngay hôm nay.

Sinh viên tốt nghiệp bootcamp trung bình dành ít hơn sáu tháng để chuyển đổi nghề nghiệp, từ khi bắt đầu bootcamp đến khi tìm được công việc đầu tiên của họ.

Câu lệnh chuyển đổi C ++

Câu lệnh switch, còn được gọi là switch … case , cho phép bạn kiểm tra xem một biểu thức có bằng một trong nhiều trường hợp hay không. Nếu biểu thức đã nêu khớp (nói cách khác là bằng) một trong các trường hợp trong khối chuyển đổi, thì mã cụ thể được liên kết với trường hợp đó sẽ được thực thi.

câu lệnh switch chứa một hoặc nhiều câu lệnh trường hợp. Chương trình sử dụng (các) câu lệnh trường hợp để khai báo (các) điều kiện mà biểu thức đích của bạn sẽ được đánh giá.

câu lệnh switch chấp nhận một biểu thức để kiểm tra, được bao quanh bởi dấu ngoặc đơn, cũng như một hoặc nhiều trường hợp mà bạn muốn đánh giá biểu thức của mình. Những trường hợp này được đặt trong dấu ngoặc nhọn.

Đây là cú pháp cho câu lệnh switch C ++:

switch (expression) {
	case firstCase:
		// Code to be executed if expression matches firstCase
		break;
	case secondCase:
		// Code to be executed if expression matches secondCase
		break;
	default:
		// Code to be executed if no expressions are met
	}
}

Đây là logic cho câu lệnh switch ở trên trong C ++:

  1. Chương trình đánh giá biểu thức.
  2. biểu thức
  3. được so sánh với firstCase. Nếu những điều này khớp, chương trình sẽ thực thi mã trong khối firstCase. Sau đó, từ khóa break sẽ chạy, từ khóa này sẽ kết thúc khối chuyển đổi.

Lưu ý :chúng ta thảo luận về từ khóa break trong phần sau của bài viết này. Về cơ bản, từ khóa này yêu cầu chương trình tiếp tục, vượt qua khối chuyển đổi hiện tại.

  1. Nếu biểu thức không khớp với firstCase, biểu thức sẽ được so sánh với secondCase.
  2. Nếu biểu thức khớp với secondCase, chương trình sẽ thực thi mã bên trong khối secondCase và câu lệnh break sẽ kết thúc khối switch.
  3. Nếu biểu thức không khớp với bất kỳ trường hợp nào trong khối switch, chương trình sẽ thực thi nội dung của câu lệnh trường hợp mặc định.

Lưu ý :chúng ta thảo luận về khái niệm câu lệnh mặc định, vì nó liên quan đến các câu lệnh chuyển đổi, trong phần sau của bài viết này. default là một từ khóa cho chương trình biết phải làm gì nếu không có câu lệnh trường hợp nào trong khối switch khớp với biểu thức.

Trong một câu lệnh switch, trước tiên chương trình sẽ đánh giá trường hợp đầu tiên. Nếu điều đó không được đánh giá là true, chương trình sẽ đánh giá các trường hợp tiếp theo cho đến khi một điều kiện được đáp ứng hoặc cho đến khi tất cả các điều kiện được đánh giá.

Ví dụ về công tắc C ++

Hãy xem từng bước một ví dụ để khám phá cách hoạt động của câu lệnh switch trong C ++.

Giả sử chúng ta đang viết một chương trình cho chúng ta biết còn bao nhiêu ngày nữa là đến cuối tuần. Trong chương trình này, mỗi ngày trong tuần sẽ được biểu thị bằng một số nguyên — ví dụ:Thứ Hai sẽ là 1, Thứ Ba sẽ là 2, Thứ Tư sẽ là 3, v.v.

Chương trình này sẽ lấy ngày hiện tại trong tuần (được biểu diễn dưới dạng số nguyên) và so sánh nó với một tập hợp các trường hợp. Mỗi trường hợp sẽ hướng chương trình in ra một câu cho biết số ngày còn lại cho đến cuối tuần, dựa trên ngày hiện tại trong tuần.

Đây là mã chúng tôi có thể sử dụng để hoàn thành nhiệm vụ này:

#include <iostream>

include namespace std;

int main() {
	int dayOfWeek = 3;

	switch (dayOfWeek) {
		case 1:
			cout<<"There are 5 days until the weekend!";
			break;
		case 2:
			cout<<"There are 4 days until the weekend!";
			break;
		case 3:
			cout<<"There are 3 days until the weekend!";
			break;
		case 4:
			cout<<"There are 2 days until the weekend!";
			break;
		case 5:
			cout<<"There is 1 day until the weekend!";
			break;
	}
}

Mã của chúng tôi trả về:

There are 3 days until the weekend.

Hãy chia nhỏ mã của chúng ta. Đầu tiên, chúng tôi khai báo một biến, được gọi là dayOfWeek, lưu trữ ngày hiện tại trong tuần dưới dạng số nguyên. Sau đó, chúng tôi sử dụng một câu lệnh switch chỉ định năm trường hợp.

Đầu tiên, chương trình của chúng tôi kiểm tra xem dayOfWeek có bằng 1. Nếu đúng, chương trình của chúng tôi sẽ in There are 5 days until the weekend! vào bảng điều khiển, sau đó nó thoát ra khỏi câu lệnh switch.

Nếu dayOfWeek không bằng 1, chương trình sẽ đánh giá trường hợp tiếp theo. Điều này sẽ tiếp tục cho đến khi chương trình đánh giá mọi trường hợp trong câu lệnh switch của chúng ta — trừ khi một trong các trường hợp được đánh giá là true, lúc đó câu lệnh break sẽ chạy và câu lệnh chuyển vòng lặp của chúng ta sẽ kết thúc.

Trong ví dụ của chúng tôi, chúng tôi đã tuyên bố rằng ngày trong tuần là 3 — có nghĩa là hôm nay là Thứ Tư. Do đó, chương trình của chúng tôi in ra There are 3 days until the weekend! vào bảng điều khiển. Sau đó, chương trình của chúng tôi kết thúc khối mã chuyển đổi và tiếp tục chạy chương trình chính.

Ngắt C ++

Các câu lệnh switch trong C ++ thường sử dụng từ khóa break trong mỗi trường hợp, giống như chúng ta đã làm trong ví dụ trên. Khi chương trình thực hiện câu lệnh break, mã trong một khối nhất định sẽ ngừng thực thi và phần còn lại của chương trình sẽ tiếp tục chạy.

câu lệnh break thường được sử dụng với câu lệnh switch vì chúng dừng chương trình đánh giá phần còn lại của các trường hợp trong câu lệnh switch.

Dưới đây là ví dụ về từ khóa break trong câu lệnh switch, được lấy từ ví dụ mở rộng của chúng tôi ở trên:

…
		case 3:
			cout<<"There are 3 days until the weekend!";
			break;
…

Vì vậy, trong ví dụ trên, nếu dayOfWeek bằng 3, chương trình của chúng ta sẽ thực hiện một câu lệnh break để không có thêm trường hợp nào được đánh giá. Điều này có ý nghĩa vì nếu dayOfWeek bằng 3 thì nó không thể bằng 4 hoặc 5, đây là các trường hợp tiếp theo trong câu lệnh switch của chúng tôi.

Nếu dayOfWeek bằng 3, thông báo There are 3 days until the weekend! được in ra bảng điều khiển. Sau đó, câu lệnh switch sẽ ngừng thực thi vì câu lệnh break chỉ đạo chương trình di chuyển qua khối switch.

C ++ Mặc định

Trong C ++, từ khóa trường hợp mặc định tùy chọn cho mã của chúng tôi biết phải làm gì nếu không có trường hợp nào đánh giá là true.

Trong ví dụ trên của chúng tôi, mã của chúng tôi chỉ tính cho các ngày trong tuần. Vì vậy, nếu đã là cuối tuần, chương trình của chúng tôi sẽ không làm gì cả. Nếu chúng tôi sử dụng câu lệnh mã mặc định, chúng tôi có thể hướng dẫn mã của mình thực hiện một hành động nếu không trường hợp nào của chúng tôi được đáp ứng.

Giả sử chúng tôi muốn in tin nhắn It’s the weekend! vào bảng điều khiển nếu đó là Thứ Bảy hoặc Chủ Nhật. Chúng tôi có thể sử dụng ví dụ câu lệnh switch từ trên và đoạn mã sau để thực hiện tác vụ này:

…
		case 5:
			cout<<"There is 1 day until the weekend!";
			break;
		default:
			cout<<"It's the weekend!";
			break;
…

Theo mã này, nếu dayOfWeek không bằng bất kỳ trường hợp nào mà chúng tôi đã chỉ định — hoặc nói cách khác, nếu dayOfWeek bằng 6 hoặc 7 — thì nội dung của câu lệnh mặc định sẽ được thực thi. Vì vậy, nếu hôm nay là Thứ Bảy, chẳng hạn, thông báo sau sẽ được in ra bảng điều khiển:

It's the weekend!

Kết luận

Câu lệnh switch được sử dụng trong C ++ để đánh giá một câu lệnh dựa trên nhiều kết quả có thể xảy ra. Nếu một trong những biểu thức này đánh giá là true, chương trình sẽ thực thi mã liên quan đến kết quả đó. Nếu không có biểu thức nào đánh giá là true, chương trình sẽ thực thi nội dung của một câu lệnh mặc định, nếu được chỉ định.

Hướng dẫn này đã thảo luận, với một ví dụ, cách sử dụng câu lệnh switch C ++ và cách sử dụng break và các từ khóa mặc định với switch. Bây giờ, bạn đã sẵn sàng để bắt đầu sử dụng các câu lệnh switch trong mã của mình như một người chuyên nghiệp!