开始的思路是现将年数从2048减到2004的,但是我只引入了一个变量要想输入2048后再减到2004,再从2004后输出闰年。在我现在的水平有点困难,而按照我的思路只用一个变量的话则是可以从2048输出到2004,不妨做一下记录(开心)
这里先展示一下题目的输出和输入
答案在论坛上有就不截图了
-----------------------------------------(我是无情的分割线)---------------------------------------------------------
这里就复制一下我的思路的代码
#include<stdio.h>
int main()
{
int i;
scanf("%d", &i);
if (i < 2000 || i>2100)
printf("Invalid year!");
else
{
for (; i <= 2100&&i>2000; i--)
{
if (i % 4 == 0 && i % 100 != 0 || i % 400 == 0)
printf("%d\n", i);
}
}
return 0;
}
不是正确答案,但是思路和输出的内容是相似的。
这里是思路:
首先可以先用if语句先判断超出范围的年数,这样方便之后用for循环。之后用for循环开始减去2048和判断是否输出年数。如果这个顺序打乱则会使每一个年数后面都会有一个Invalid year!,如果for的条件不加 i <= 2100&&i>2000这会一直减到负数。