C语言判读年月日是否合规的函数代码,正确返回1,不正确返回0
时间: 2023-10-05 08:11:22 浏览: 85
以下是一个简单的 C 语言函数,用于判断年月日是否合规:
```c
int check_date(int year, int month, int day) {
if (year < 0 || month < 1 || month > 12 || day < 1) {
return 0;
}
switch (month) {
case 2:
if (day > 29 || (day == 29 && (year % 4 != 0 || (year % 100 == 0 && year % 400 != 0)))) {
return 0;
}
break;
case 4:
case 6:
case 9:
case 11:
if (day > 30) {
return 0;
}
break;
default:
if (day > 31) {
return 0;
}
break;
}
return 1;
}
```
该函数接受年月日三个参数,如果年月日合规,则返回 1,否则返回 0。其中,年份必须大于等于 0,月份必须在 1 到 12 之间,日期必须大于等于 1。对于每个月份,检查其天数是否合规。对于二月份,需要特别判断是否为闰年。
阅读全文