在c语言中编写一个函数实现:输入年月,返回该月的天数。并在主函数中调用该函数输出该月的天数。
时间: 2024-10-10 09:11:57 浏览: 64
万年历课程设计(Vc)
在C语言中,我们可以创建一个名为`days_in_month`的函数,它接受两个参数:月份(int类型,范围从1到12)和年份(int类型)。对于普通年份(非闰年),每个月的天数是固定的,但对于闰年,二月有29天。以下是这个函数的实现:
```c
#include <stdio.h>
// 函数声明
int days_in_month(int month, int year);
// 主函数
int main() {
int month, year;
// 输入年月
printf("请输入年份和月份(月份1-12):");
scanf("%d %d", &year, &month);
// 调用函数并输出结果
int days = days_in_month(month, year);
if (days > 0) {
printf("该年的%2d月有%d天。\n", month, days);
} else {
printf("无效的月份或年份!\n");
}
return 0;
}
// 实现函数
int days_in_month(int month, int year) {
switch(month) {
case 1: case 3: case 5: case 7: case 8: case 10: case 12:
return 31; // 这些月份都是31天
case 4: case 6: case 9: case 11:
return 30; // 这些月份都是30天
case 2: // 判断是否为闰年
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {
return 29;
} else {
return 28;
}
default:
return -1; // 非法的月份
}
}
```
当你运行这个程序时,它会提示用户输入年份和月份,然后根据输入计算并输出对应月份的天数。
阅读全文