C语言闰年判断 从键盘任意输入一个公元年份(大于等于1),判断它是否是闰年。若是闰年输出“Yes”,否则输出“No”。要求对输入数据进行合法性判断。 已知符合下列条件之一者是闰年: (1)能被4整除,但不能被100整除; (2)能被400整除。输入格式: "%d" 输出格式: 是闰年,输出:"Yes\n" 不是闰年,输出:"No\n" 输入数据不合法:"Input error!\n"
时间: 2024-05-02 10:16:47 浏览: 122
runnian.zip_闰年_闰年判断
好的,我的回答如下:
```c
#include <stdio.h>
int main() {
int year;
if (scanf("%d", &year) != 1) { // 判断输入是否合法
printf("Input error!\n");
return 0;
}
if (year <= 0) { // 判断输入是否大于等于1
printf("Input error!\n");
return 0;
}
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) { // 判断是否为闰年
printf("Yes\n");
} else {
printf("No\n");
}
return 0;
}
```
输入一个年份,首先对输入进行合法性判断,如果是非法输入,输出 "Input error!\n"。如果输入年份小于等于 0,也输出 "Input error!\n"。接下来根据闰年的定义进行判断,如果是闰年,输出 "Yes\n",否则输出 "No\n"。
阅读全文