[Wiki] Lệnh switch trong C++

– Định nghĩa: Đây là lệnh để lựa chọn giữa các trường hợp tương tự
If-else nhưng khác ở chỗ lệnh switch chỉ chấp nhận biểu thức hằng.
– Cấu trúc:

switch(biểu thức)
{
case <hằng 1>:
    các lệnh;
    break;
case <hằng 2>:
    các lệnh;
    break;
case <hằng n>:
    các lệnh;
    break;
default:
    các lệnh;
}

– Ví dụ: Nhập vào số và in ra thứ tương tự với số đó.

int thu;
cout<<"Nhap vao thu: ";
cin>>thu;
switch(thu)
{
case 2:
    cout<<"Thu hai";
    break;
case 3:
    cout<<"Thu ba";
    break;
case 4:
    cout<<"Thu tu";
    break;
case 5:
    cout<<"Thu nam";
    break;
case 6:
    cout<<"Thu sau";
    break;
case 7:
    cout<<"Thu bay";
    break;
case 8:
    cout<<"Chu nhat";
    break;
default:
    cout<<"Thu ban nhap khong hop le!";
}

Chú ý:

  • Các trường hợp ( case ) của switch chỉ chấp nhận hằng số. Nếu viết
    như sau là sai:
switch(x)
{
case x<0:
    cout<<"So am";
    break;
case x>0:
    cout<<"So duong";
    break;
}
  • Lệnh break; ở sau mỗi case giúp cho chương trình thoát khỏi switch mà
    không tiếp tục chạy các case ở dưới.
  • Trường hợp nhiều giá trị cùng chạy một khối lệnh thì làm như sau:

Ví dụ: Nhập tháng và cho biết tháng đó có bao nhiêu ngày.

int thang;
cout<<"Nhap vao thang: ";
cin>>thang;
switch(thang)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
    cout<<"31 ngay";
    break;
case 2:
    cout<<"28 hoac 29 ngay";
    break;
case 4:
case 6:
case 9:
case 11:
    cout<<"30 ngay";
    break;
}

1 Like