Câu lệnh switch có thể thực hiện bao nhiêu case năm 2024

Câu lệnh chuyển đổi trong C kiểm tra giá trị của một biến và compares nó với nhiều trường hợp. Khi tìm thấy trường hợp khớp, một khối câu lệnh liên quan đến trường hợp cụ thể đó sẽ được thực thi.

Mỗi trường hợp trong một khối của switch có một tên/số khác nhau được gọi là mã định danh. Giá trị do người dùng cung cấp được so sánh với tất cả các trường hợp bên trong khối chuyển đổi cho đến khi tìm thấy kết quả khớp.

Nếu KHÔNG tìm thấy trường hợp khớp thì câu lệnh mặc định sẽ được thực thi và điều khiển sẽ thoát ra khỏi khối chuyển đổi.

Cú pháp chuyển đổi trường hợp

Cú pháp chung về cách triển khai switch-case trong chương trình 'C' như sau:

switch( expression ) { case value-1:

  Block-1;
  Break;
case value-2:
  Block-2;
  Break;
case value-n:
  Block-n;
  Break;
default:
  Block-1;
  Break;
} Statement-x;

  • Biểu thức có thể là biểu thức số nguyên hoặc biểu thức ký tự.
  • Giá trị-1, 2, n là các nhãn trường hợp được sử dụng để xác định từng trường hợp riêng lẻ. Hãy nhớ rằng nhãn chữ không được giống nhau vì nó có thể gây ra sự cố khi thực hiện chương trình. Giả sử chúng ta có hai trường hợp có cùng nhãn là '1'. Sau đó, trong khi thực thi chương trình, trường hợp xuất hiện đầu tiên sẽ được thực thi mặc dù bạn muốn chương trình thực thi trường hợp thứ hai. Điều này tạo ra các vấn đề trong chương trình và không mang lại kết quả như mong muốn.
  • Nhãn hộp luôn kết thúc bằng dấu hai chấm ( : ). Mỗi trường hợp này được liên kết với một khối.
  • Một khối không là gì ngoài nhiều câu lệnh được nhóm lại cho một trường hợp cụ thể.
  • Bất cứ khi nào switch được thực thi, giá trị của biểu thức kiểm tra sẽ được so sánh với tất cả các trường hợp mà chúng ta đã xác định bên trong switch. Giả sử biểu thức kiểm tra chứa giá trị 4. Giá trị này được so sánh với tất cả các trường hợp cho đến trường hợp có nhãn bốn được tìm thấy trong chương trình. Ngay sau khi tìm thấy một trường hợp, khối câu lệnh liên quan đến trường hợp cụ thể đó sẽ được thực thi và quyền điều khiển sẽ thoát khỏi công tắc.
  • Từ khóa break trong mỗi trường hợp cho biết sự kết thúc của một trường hợp cụ thể. Nếu chúng ta không đặt dấu ngắt trong từng trường hợp thì ngay cả khi trường hợp cụ thể được thực thi, switch trong C sẽ tiếp tục thực thi tất cả các trường hợp cho đến khi kết thúc. Điều này không nên xảy ra; do đó chúng ta luôn phải đặt từ khóa break trong từng trường hợp. Break sẽ chấm dứt trường hợp sau khi nó được thực thi và điều khiển sẽ rơi ra khỏi switch.
  • Trường hợp mặc định là trường hợp tùy chọn. Bất cứ khi nào giá trị của biểu thức kiểm tra không khớp với bất kỳ trường hợp nào bên trong switch thì mặc định sẽ được thực thi. Khácwise, không cần thiết phải viết mặc định trong switch.
  • Khi công tắc được thực thi, điều khiển sẽ chuyển đến câu lệnh-x và quá trình thực thi chương trình sẽ tiếp tục.

Lưu đồ câu lệnh chuyển đổi

theo dõiwing sơ đồ minh họa cách chọn một trường hợp trong trường hợp chuyển đổi:

Câu lệnh switch có thể thực hiện bao nhiêu case năm 2024
Cách thức hoạt động của Switch

Ví dụ về trường hợp chuyển đổi trong C

theo dõiwing chương trình minh họa việc sử dụng switch:

include
int main() {
    int num = 8;
    switch (num) {
        case 7:
            printf("Value is 7");
            break;
        case 8:
            printf("Value is 8");
            break;
        case 9:
            printf("Value is 9");
            break;
        default:
            printf("Out of range");
            break;
    }
    return 0;
}

Đầu ra:

Value is 8

Câu lệnh switch có thể thực hiện bao nhiêu case năm 2024

  1. Trong chương trình đã cho, chúng tôi đã giải thích việc khởi tạo một biến số có giá trị 8.
  2. Cấu trúc switch được sử dụng để so sánh giá trị được lưu trữ trong biến num và thực thi khối câu lệnh liên quan đến trường hợp khớp.
  3. Trong chương trình này, vì giá trị được lưu trong biến num là 8 nên switch sẽ thực thi trường hợp có nhãn case là XNUMX. Sau khi thực hiện trường hợp đó, điều khiển sẽ thoát khỏi switch và chương trình sẽ kết thúc với kết quả thành công bởi in giá trị trên màn hình đầu ra.

Hãy thử thay đổi giá trị của biến num và nhận thấy sự thay đổi ở đầu ra.

Ví dụ: chúng tôi xem xét theo dõiwing chương trình mặc định:

include

int main() { int language = 10; switch (language) { case 1:

printf("C#\n");
break;
case 2:
printf("C\n");
break;
case 3:
printf("C++\n");
break;
default:
printf("Other programming language\n");}}
Đầu ra:

Other programming language

Khi làm việc với trường hợp switch trong C, bạn nhóm nhiều trường hợp bằng các nhãn duy nhất. Bạn cần đưa câu lệnh break trong mỗi trường hợp vào nhánh ở cuối câu lệnh switch.

Trường hợp mặc định tùy chọn sẽ chạy khi không có kết quả khớp nào khác được thực hiện.

Chúng tôi xem xét việc theo dõiwing tuyên bố chuyển đổi:

include

int main() { int number=5; switch (number) { case 1: case 2: case 3:

printf("One, Two, or Three.\n");
break;
case 4: case 5: case 6:
printf("Four, Five, or Six.\n");
break;
default:
printf("Greater than Six.\n");}}
Đầu ra:

Four, Five, or Six.

Công tắc lồng nhau trong C

In C, chúng ta có thể có một công tắc bên trong được nhúng vào một công tắc bên ngoài. Ngoài ra, các hằng số trường hợp của công tắc bên trong và bên ngoài có thể có các giá trị chung và không có bất kỳ xung đột nào.

Chúng tôi xem xét theo dõiwing chương trình mà người dùng nhập ID của chính mình, nếu ID hợp lệ, nó sẽ yêu cầu anh ta nhập mật khẩu, nếu mật khẩu đúng chương trình sẽ in tên của người dùng, khácwise ,chương trình sẽ in Sai mật khẩu và nếu ID không tồn tại, chương trình sẽ in Sai ID

include

int main() {

    int ID = 500;
    int password = 000;
    printf("Plese Enter Your ID:\n ");
    scanf("%d", & ID);
    switch (ID) {
        case 500:
            printf("Enter your password:\n ");
            scanf("%d", & password);
            switch (password) {
                case 000:
                    printf("Welcome Dear Programmer\n");
                    break;
                default:
                    printf("incorrect password");
                    break;
            }
            break;
        default:
            printf("incorrect ID");
            break;
    }
}

Đầu ra:

Plese Enter Your ID: 500 Enter your password: 000 Welcome Dear Programmer

Câu lệnh switch có thể thực hiện bao nhiêu case năm 2024

  1. Trong chương trình đã cho, chúng tôi đã giải thích hai biến khởi tạo: ID và mật khẩu
  2. Cấu trúc switch bên ngoài được sử dụng để so sánh giá trị được nhập vào biến ID. Nó thực thi khối câu lệnh liên quan đến trường hợp trùng khớp (khi ID==500).
  3. Nếu câu lệnh khối được thực thi với trường hợp khớp, một công tắc bên trong sẽ được sử dụng để so sánh các giá trị được nhập trong biến mật khẩu và thực thi các câu lệnh được liên kết với trường hợp khớp (khi mật khẩu==000).
  4. Nền tảng khácwise, trường hợp chuyển đổi sẽ kích hoạt trường hợp mặc định và in văn bản thích hợp liên quan đến phác thảo chương trình.

Tại sao chúng ta cần vỏ Switch?

Có một vấn đề tiềm ẩn với câu lệnh if-else com là gìplexity của chương trình tăng lên bất cứ khi nào số lượng đường dẫn thay thế tăng lên. Nếu bạn sử dụng nhiều cấu trúc if-else trong chương trình, chương trình có thể trở nên khó đọc và khó hiểu. Đôi khi nó thậm chí có thể gây nhầm lẫn cho nhà phát triển, người đã viết chương trình.