Trường hợp chuyển đổi C ++

Câu lệnh switch case được sử dụng khi chúng ta có nhiều tùy chọn và chúng ta cần thực hiện một tác vụ khác nhau cho mỗi tùy chọn

C – Tuyên bố trường hợp chuyển đổi

Trước khi chúng ta xem câu lệnh switch case hoạt động như thế nào trong chương trình C, hãy kiểm tra cú pháp của nó

switch (variable or an integer expression)
{
     case constant:
     //C Statements
     ;
     case constant:
     //C Statements
     ;
     default:
     //C Statements
     ;
}

Sơ đồ dòng chảy của trường hợp chuyển đổi

Trường hợp chuyển đổi C ++

Ví dụ về Switch Case trong C

Lấy một ví dụ đơn giản để hiểu hoạt động của câu lệnh switch case trong chương trình C

#include 
int main()
{
     int num=2;
     switch(num+2)
     {
         case 1:
           printf("Case1: Value is: %d", num);
         case 2:
           printf("Case1: Value is: %d", num);
         case 3:
           printf("Case1: Value is: %d", num);
         default:
           printf("Default: Value is: %d", num);
    }
    return 0;
}

đầu ra

Default: value is: 2

Giải trình. Trong switch tôi đã đưa ra một biểu thức, bạn cũng có thể đưa ra biến. Tôi đã cho num+2, trong đó giá trị num là 2 và sau khi cộng, biểu thức cho kết quả là 4. Vì không có trường hợp nào được xác định với giá trị 4 nên trường hợp mặc định được thực thi

Twist in a story – Giới thiệu câu lệnh Break

Trước khi chúng ta thảo luận thêm về lệnh break, hãy đoán đầu ra của chương trình C này

#include 
int main()
{
     int i=2;
     switch (i)
     {
        case 1:
           printf("Case1 ");
        case 2:
           printf("Case2 ");
        case 3:
           printf("Case3 ");
        case 4:
           printf("Case4 ");
        default:
           printf("Default ");
     }
    return 0;
}

đầu ra

Case2 Case3 Case4 Default

Tôi đã chuyển một biến để chuyển đổi, giá trị của biến là 2 nên điều khiển nhảy sang trường hợp 2, tuy nhiên không có câu lệnh nào như vậy trong chương trình trên có thể phá vỡ luồng sau khi thực hiện trường hợp 2. Đó là lý do sau trường hợp 2, tất cả các trường hợp tiếp theo và câu lệnh mặc định đều được thực thi

Làm cách nào để tránh tình huống này?
Chúng ta có thể sử dụng câu lệnh break để ngắt luồng điều khiển sau mỗi khối trường hợp.

Câu lệnh break trong Switch Case

Câu lệnh ngắt rất hữu ích khi bạn muốn luồng chương trình của mình ra khỏi thân công tắc. Bất cứ khi nào gặp câu lệnh ngắt trong phần thân công tắc, điều khiển sẽ xuất hiện từ câu lệnh trường hợp chuyển đổi

Ví dụ về Switch Case có break
Tôi đang thực hiện điều tương tự mà chúng ta đã thấy ở trên nhưng lần này chúng tôi đang sử dụng break.

#include 
int main()
{
     int i=2;
     switch (i)
     {
          case 1:
             printf("Case1 ");
             break;
          case 2:
             printf("Case2 ");
             break;
          case 3:
             printf("Case3 ");
             break;
          case 4:
             printf("Case4 ");
             break;
          default:
             printf("Default ");
     }
     return 0;
}

đầu ra

Case 2

Tại sao tôi không sử dụng câu lệnh ngắt sau khi mặc định?
Điều khiển sẽ tự rời khỏi công tắc sau khi mặc định nên tôi không sử dụng nó, tuy nhiên nếu bạn muốn sử dụng .

Vài điểm quan trọng liên quan đến Switch Case

1) Trường hợp không nhất thiết phải có thứ tự 1, 2, 3, v.v. Chúng có thể có bất kỳ giá trị số nguyên nào sau từ khóa case. Ngoài ra, trường hợp không nhất thiết phải luôn theo thứ tự tăng dần, bạn có thể chỉ định chúng theo bất kỳ thứ tự nào theo nhu cầu của chương trình

2) Bạn cũng có thể sử dụng các ký tự trong trường hợp chuyển đổi. Ví dụ -

#include 
int main()
{
     char ch='b';
     switch (ch)
     {
         case 'd':
            printf("CaseD ");
            break;
         case 'b':
            printf("CaseB");
            break;
         case 'c':
            printf("CaseC");
            break;
         case 'z':
            printf("CaseZ ");
            break;
         default:
            printf("Default ");
    }
    return 0;
}

đầu ra

________số 8

3) Biểu thức được cung cấp trong công tắc phải dẫn đến một giá trị không đổi, nếu không nó sẽ không hợp lệ.
Ví dụ.
Biểu thức hợp lệ cho switch –

switch(1+2+23)
switch(1*2+3%4)

Biểu thức chuyển đổi không hợp lệ –

#include 
int main()
{
     int num=2;
     switch(num+2)
     {
         case 1:
           printf("Case1: Value is: %d", num);
         case 2:
           printf("Case1: Value is: %d", num);
         case 3:
           printf("Case1: Value is: %d", num);
         default:
           printf("Default: Value is: %d", num);
    }
    return 0;
}

0

4) Cho phép lồng các câu lệnh chuyển đổi, có nghĩa là bạn có thể có các câu lệnh chuyển đổi bên trong một công tắc khác. Tuy nhiên, nên tránh các câu lệnh chuyển đổi lồng nhau vì nó làm cho chương trình phức tạp hơn và khó đọc hơn.
5) Không cho phép các giá trị chữ hoa chữ thường trùng lặp. Ví dụ, chương trình sau đây là sai.
Chương trình này sai vì chúng tôi có hai trường hợp 'A' ở đây sai vì chúng tôi không thể có các giá trị trường hợp trùng lặp.

#include 
int main()
{
     int num=2;
     switch(num+2)
     {
         case 1:
           printf("Case1: Value is: %d", num);
         case 2:
           printf("Case1: Value is: %d", num);
         case 3:
           printf("Case1: Value is: %d", num);
         default:
           printf("Default: Value is: %d", num);
    }
    return 0;
}

1

6) Câu lệnh mặc định là tùy chọn, nếu bạn không có mặc định trong chương trình, nó sẽ chạy tốt mà không gặp vấn đề gì. Tuy nhiên, nên có một câu lệnh mặc định để mặc định thực thi nếu không có trường hợp nào phù hợp. Điều này đặc biệt hữu ích khi chúng tôi lấy đầu vào từ người dùng cho các lựa chọn trường hợp, vì đôi khi người dùng có thể nhập sai giá trị, chúng tôi có thể nhắc nhở người dùng bằng một thông báo lỗi thích hợp mà chúng tôi có thể đặt trong câu lệnh mặc định

Trường hợp chuyển đổi trong C là gì?

Câu lệnh chuyển đổi cho phép kiểm tra sự bằng nhau của một biến đối với danh sách các giá trị. Mỗi giá trị được gọi là một trường hợp và biến đang được bật sẽ được kiểm tra cho từng trường hợp chuyển đổi.

Trường hợp chuyển đổi có thể được sử dụng C?

Quy tắc cho câu lệnh switch trong ngôn ngữ C . 2) Giá trị trường hợp phải là một hằng số nguyên hoặc ký tự. 3) Giá trị trường hợp chỉ có thể được sử dụng bên trong câu lệnh switch . 4) Câu lệnh break trong trường hợp chuyển đổi là không bắt buộc.

Tại sao trường hợp chuyển đổi được sử dụng trong C?

Câu lệnh Switch trong C là gì? . Khi trường hợp khớp được tìm thấy, một khối câu lệnh được liên kết với trường hợp cụ thể đó được thực thi

Cấu trúc trường hợp C là gì?

Câu lệnh case hoặc switch là một loại cơ chế kiểm soát lựa chọn được sử dụng để cho phép giá trị của một biến hoặc biểu thức thay đổi luồng điều khiển thực thi chương trình thông qua một nhánh nhiều nhánh.