如题所述
if
(year
%
4
==
0
&&
year
%
100
!=
0
||
year
%
400
==
0)
{
//输出某年是闰年
System.out.println
(year
+
"年是闰年");
}
else
{
//输出某年是平年
System.out.println
(year
+
"年是平年");
}
1。能被4整除而不能被100整除。(如2004年就是闰年,1800年不是。)
2。能被400整除。(如2000年是闰年)
(year
%
4
==
0
&&
year
%
100
!=
0
||
year
%
400
==
0)
{
//输出某年是闰年
System.out.println
(year
+
"年是闰年");
}
else
{
//输出某年是平年
System.out.println
(year
+
"年是平年");
}
1。能被4整除而不能被100整除。(如2004年就是闰年,1800年不是。)
2。能被400整除。(如2000年是闰年)
温馨提示:答案为网友推荐,仅供参考
第1个回答 2020-04-06
把判断的那行直接写在return后面,就可以封装成一个函数了。不过不建议这么做,没有太大的必要性,反而增加了函数寻址、压栈、出栈的时间消耗本回答被提问者采纳
第2个回答 2020-02-27
按你的需求,可以用宏替换来做(当然也可以写成函数)
#define
isLeap(x)
((x)
%
4
==
0
?
(x)
%
100
==
0
?
(x)
%
400
==
0
?
1
:
0
:
1
:
0)
int
main(void)
{
int
i
=
0;
for
(i
=
2000;
i
<=
2050;
i
++)
{
if
(isLeap(i))
{
printf("%ld年是闰年\n",
i);
}
else
{
printf("%ld年不是闰年\n",
i);
}
}
}
#define
isLeap(x)
((x)
%
4
==
0
?
(x)
%
100
==
0
?
(x)
%
400
==
0
?
1
:
0
:
1
:
0)
int
main(void)
{
int
i
=
0;
for
(i
=
2000;
i
<=
2050;
i
++)
{
if
(isLeap(i))
{
printf("%ld年是闰年\n",
i);
}
else
{
printf("%ld年不是闰年\n",
i);
}
}
}