switch(t)
{
case 1:
{
n = 31;break;
}
case 3:
{
n = 31;break;
}
case 5:
{
n = 31;break;
}
case 7:
{
n = 31;break;
}
case 8:
{
n = 31;break;
}
case 10:
{
n = 31;break;
}
case 12:
{
n = 31;break;
}
case 4:
{
n = 30;break;
}
case 6:
{
n = 30;break;
}
case 9:
{
n = 30;break;
}
case 11:
{
n = 30;break;
}
case 2:
if(y%4==0 &&(y%100!=0 || y%400==0)) { n = 29;}
else n = 28;
break;
Bài này nên chỉnh thế nào, em chỉnh thấy lỗi ở chỗ 28 ngày
Năm nhuận là năm chia hết cho 400 hoặc chia hết cho 4 nhưng không chia hết cho 100.
Phần if sửa lại (y%400 == 0 || (y%4==0 & & y%100!=0)
Ngoài ra, switch case của bạn dài quá
Chỉ cần thế này:
switch(t) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
n = 31;
break;
//tháng 30 ngày tương tự
}
4 Likes
Mục đích của switch - case
được sinh ra là vậy. Lựa chọn giá trị riêng biệt, không kiểu như a >=0 && a<= 12
.
Làm như bạn @quan01 thì dùng if - else
cho xong.
4 Likes