用C语言输入12个月份的数字(1~12),输出该月的天数。如输入1,输出31。(假定年份为2024年)。 分支结构简洁点的
时间: 2024-10-21 22:15:31 浏览: 6
00_file_io1.rar_C语言基础 标准输入输出
在C语言中,我们可以使用if-else if-else结构来实现这个功能。由于闰年的规则,我们需要检查当前月份是否为2月,并且判断这一年是否是闰年。以下是简化的分支结构示例:
```c
#include <stdio.h>
int get_days_in_month(int month) {
switch (month) {
case 1: // January
case 3: // March
case 5: // May
case 7: // July
case 8: // August
case 10: // October
case 12: // December
return 31;
case 4: // April
case 6: // June
case 9: // September
case 11: // November
return 30;
case 2: { // February
int is_leap_year = (2024 % 4 == 0 && (2024 % 100 != 0 || 2024 % 400 == 0)); // Check for leap year
return is_leap_year ? 29 : 28; // 28 days for non-leap years and 29 for leap years
}
default:
printf("Invalid input! Please enter a number between 1 and 12.\n");
return -1; // Handle invalid input
}
}
int main() {
int month;
printf("Enter the month number (1-12): ");
scanf("%d", &month);
if (month >= 1 && month <= 12) {
int days = get_days_in_month(month);
if (days != -1)
printf("Number of days in %dth month: %d\n", month, days);
} else {
printf("Invalid month entered!\n");
}
return 0;
}
```
阅读全文