在一行中输入一个整数
,满足
。
输出一个字符串,若
为闰年,输出 "yes"(不含双引号);否则输出 "no"(不含双引号)。
2000
yes
能被
整除,因此是闰年。
1900
no
能被
整除但不能被
整除,因此不是闰年。
#include <stdio.h>
int main() {
int a;
scanf("%d",&a);
printf("%s\n", ((a%400==0)||((a%4==0)&&(a%100)))? "yes":"no");
return 0;
} #include <stdio.h>
#include <stdbool.h>
static bool is_leap_year(int n)
{
if ((n % 400 == 0) ||
(n % 4 == 0 && n % 100 != 0))
{
return true;
}
return false;
}
int main() {
int n = 0;
scanf("%d", &n);
printf("%s", is_leap_year(n) ? "yes" : "no");
return 0;
} #include <stdio.h>
int main() {
int a;
scanf("%d", &a);
if ((a % 4 == 0 ) && (a % 100 != 0) || (a % 400 == 0 ) ) {
printf("yes\n");
} else {
printf("no\n");
}
return 0;
} int main()
{
int year = 0;
scanf("%d", &year);
//1900年是平年
//普通年,润年, 世纪年
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
printf("yes\n");
else
printf("no\n");
return 0;
} //能被4整除但不能被100整除的年份是闰年,能被400整除的年份也是闰年。
//2024年是闰年,因为它可以被4整除,但不能被100整除。
//1900年不是闰年,因为它可以被100整除,但不能被400整除。
//1600年是闰年,可以被4整除,也能被100整除,但它同时也能被400整除。
#include <stdio.h>
int main()
{
int a = 0;
scanf("%d", &a);
if(a % 400 == 0)
{
printf("yes\n");
}
else
{
if(a % 4 == 0 && a % 100 != 0)
{
printf("yes\n");
}
else {
printf("no\n");
}
}
return 0;
} #include <stdio.h>
int CheckYear(int yearInput);
int main() {
int year;
scanf("%d", &year);
if (CheckYear(year)) {
// 1. 能被400整除
if (year % 400 == 0) {
printf("yes\n");
}
// 2. 能被4整除,且不能被100整除
else if (year % 4 == 0 && year % 100 != 0) {
printf("yes\n");
}
else{
printf("no\n");
}
} else {
printf("Invalid input!!!\n");
}
return 0;
}
/* @brief 判断输入是否合法
@param 需要判断是否是闰年的年份
@retval 返回值为1,则输入合法;返回值为0,则输入不合法
*/
int CheckYear(int yearInput) {
int yearFlag = 0;
if (1 <= yearInput && yearInput <= 2018) {
yearFlag = 1;
return yearFlag;
}
return yearFlag;
}