用c语言编写输入年份和月份输出多少天考虑闰年
时间: 2024-09-13 18:11:00 浏览: 49
在C语言中,编写一个程序来输入年份和月份,然后输出该月有多少天,需要考虑闰年的情况。闰年是指能被4整除的年份,但是如果能被100整除而不能被400整除的年份不是闰年。下面是一个简单的C语言程序示例,实现了上述功能:
```c
#include <stdio.h>
int main() {
int year, month, days;
// 输入年份和月份
printf("请输入年份和月份(例如:2023 4):");
scanf("%d %d", &year, &month);
// 根据月份确定天数,考虑闰年对二月份天数的影响
switch (month) {
case 1: case 3: case 5: case 7: case 8: case 10: case 12:
days = 31;
break;
case 4: case 6: case 9: case 11:
days = 30;
break;
case 2:
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))
days = 29; // 闰年的二月有29天
else
days = 28; // 平年的二月有28天
break;
default:
printf("输入的月份不正确。\n");
return 1; // 非法月份,退出程序
}
// 输出结果
printf("%d年%d月有%d天。\n", year, month, days);
return 0;
}
```
这个程序首先提示用户输入年份和月份,然后使用`scanf`函数读取输入的值。接着,使用`switch`语句根据月份确定天数,对于二月份,还额外判断了是否为闰年,来决定输出28天还是29天。最后,程序输出结果并结束。
阅读全文