哪里错了
题目描述写一程序判断某一年是否是闰年。
输入要求
输入一个整数表示年份
输出要求
判断该年份是否为闰年,如果不是就输出no ,是就输出yes
输入样例
2000
输出样例
yes
提示
判断闰年的条件是:能被4整除但不能被100整除,或者能被400整除。
#include <stdio.h>
int main()
{
int a,b,c,d;
scanf("%d",&a);
b=a%4;
c=a%100;
d=a%400;
if(b=0&&c!=0)
printf("yes\n");
else if(d=0)
printf("yes\n");
else if(c>0)
printf("no\n");
return 0;
} 判断是否相等要用两个等号
#include <stdio.h>
int main() {
int a, b, c, d;
scanf("%d", &a);
b = a % 4;
c = a % 100;
d = a % 400;
if (b == 0 && c != 0)
printf("yes\n");
else if (d == 0)
printf("yes\n");
else if (c > 0)
printf("no\n");
return 0;
} 感谢让我复习习题#include <stdio.h>
int main()
{
int year;
scanf("%d", &year);
printf(!(year%4) && (!(year%400) || year%100) ? "YES" : "NO");
return 0;
} 从图中可以发现,可以除整 400 的数字肯定可以除整 100,可以除整 100 的数字肯定可以除整 4
理论上如图,A 包着 B 包着 C(设 A: 除整 4,B: 除整 100,C: 除整 400)
而不要的只是除整 100 的部分
注:这里有条件优先级,要除整 4 > 要除整 400 > 不要除整 100,意思就是就算能除整 100,只要也能除整 400 都算是闰年(因为能除整 400 条件 比 不能除整 100 优先)
页:
[1]