要求:
输入月份,输出当天的天数。 例如: 1、3、5、7、8、10、12(月)有31天; 4、6、9、11(月)有30天; 而2月根据是否是闰年有28/29天之分。 当输入1月时输出当月的天数(31天),然而输入2月后要求继续询问年份,以此再判断是否为闰年。
#include <stdio.h>
int main() {
int month, year;
printf("请输入月份:");
scanf("%d", &month);
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
printf("该月有31天\n");
break;
case 4:
case 6:
case 9:
case 11:
printf("该月有30天\n");
break;
case 2:
printf("请输入年份:");
scanf("%d", &year);
// 判断闰年:能被4整除但不能被100整除,或能被400整除
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {
printf("该月有29天(闰年)\n");
} else {
printf("该月有28天(平年)\n");
}
break;
default:
printf("输入的月份无效,请输入1-12之间的数字\n");
}
return 0;
}