#include < <stdio.h>
main(
{
int year, month;
printf("Input year,month: ");
scanf("%d, %d", &year, &month);/*輸入相應的年和月*/
switch (month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
printf("31 days\n");
break; .
case 2:
if(vyear % 4== 0 && year % 100 != O)l(year % 400 == 0))
printf("29 days\n"); /*閏年的2月有 29天*/
}
else
{
printf("28 days\n");/*平年的2月有28天*/
break;
case 4:
case 6:
case 9:
case 11:
printf("30 daysln");
break;
default:
printf("Input error!\n");
}
}
擴展資料
switch語句用法註意事項:
switch 語句可以更方便地應用於多個分支的控制流程。C89 指明,壹個 switch 語句最少可以支持 257 個 case 語句,而 C99 則要求至少支持 1023 個 case 語句。然而,在實際開發環境中,為了程序的可讀性與執行效率,應該盡量減少 switch 語句中的 case 語句。
除此之外,switch 語句與 if 語句不同的是,switch 語句只能夠測試是否相等,因此,case 語句後面只能是整型或字符型的常量或常量表達式;而在 if 語句中還能夠測試關系與邏輯表達式。
不要忘記在 case 語句的結尾添加 break 語句。在 switch 語句中,每個 case 語句的結尾不要忘記添加 break 語句,否則將導致多個分支重疊。當然,除非有意使多個分支重疊,這樣可以免去 break 語句。