c语言算法不理解!判定 2000 ― 2500 年中的每一年是否闰年,将结果输出.润年的条件:1)能被 4 整除,但不能被 100 整除的年份;2)能被 100 整除,又能被 400 整除的年份;设 y 为被检测的年份,则算
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/24 11:43:53
![c语言算法不理解!判定 2000 ― 2500 年中的每一年是否闰年,将结果输出.润年的条件:1)能被 4 整除,但不能被 100 整除的年份;2)能被 100 整除,又能被 400 整除的年份;设 y 为被检测的年份,则算](/uploads/image/z/3691186-34-6.jpg?t=c%E8%AF%AD%E8%A8%80%E7%AE%97%E6%B3%95%E4%B8%8D%E7%90%86%E8%A7%A3%21%E5%88%A4%E5%AE%9A+2000++%E2%80%95+2500+%E5%B9%B4%E4%B8%AD%E7%9A%84%E6%AF%8F%E4%B8%80%E5%B9%B4%E6%98%AF%E5%90%A6%E9%97%B0%E5%B9%B4%2C%E5%B0%86%E7%BB%93%E6%9E%9C%E8%BE%93%E5%87%BA.%E6%B6%A6%E5%B9%B4%E7%9A%84%E6%9D%A1%E4%BB%B6%EF%BC%9A1%29%E8%83%BD%E8%A2%AB+4+%E6%95%B4%E9%99%A4%2C%E4%BD%86%E4%B8%8D%E8%83%BD%E8%A2%AB+100+%E6%95%B4%E9%99%A4%E7%9A%84%E5%B9%B4%E4%BB%BD%EF%BC%9B2%29%E8%83%BD%E8%A2%AB+100+%E6%95%B4%E9%99%A4%2C%E5%8F%88%E8%83%BD%E8%A2%AB+400+%E6%95%B4%E9%99%A4%E7%9A%84%E5%B9%B4%E4%BB%BD%EF%BC%9B%E8%AE%BE+y+%E4%B8%BA%E8%A2%AB%E6%A3%80%E6%B5%8B%E7%9A%84%E5%B9%B4%E4%BB%BD%2C%E5%88%99%E7%AE%97)
c语言算法不理解!判定 2000 ― 2500 年中的每一年是否闰年,将结果输出.润年的条件:1)能被 4 整除,但不能被 100 整除的年份;2)能被 100 整除,又能被 400 整除的年份;设 y 为被检测的年份,则算
c语言算法不理解!
判定 2000 ― 2500 年中的每一年是否闰年,将结果输出.
润年的条件:
1)能被 4 整除,但不能被 100 整除的年份;
2)能被 100 整除,又能被 400 整除的年份;
设 y 为被检测的年份,则算法可表示如下:
S1: 2000→y
S2:若 y 不能被 4 整除,则输出 y“不是闰年”,然后转到 S6
S3:若 y 能被 4 整除,不能被 100 整除,则输出 y“是闰年”,然后转到 S6
S4:若 y 能被 100 整除,又能被 400 整除,输出 y“是闰年”否则输出 y“不是闰年”,
然后转到 S6
S5:输出 y“不是闰年”.
S6:y+1→y
S7:当 y≤2500 时,返回 S2 继续执行,否则,结束.
从S1步骤我就不懂了,为什么要2000→Y.等等,哪位高手能为我一一说一下为什么
c语言算法不理解!判定 2000 ― 2500 年中的每一年是否闰年,将结果输出.润年的条件:1)能被 4 整除,但不能被 100 整除的年份;2)能被 100 整除,又能被 400 整除的年份;设 y 为被检测的年份,则算
S1:题目规定从2000年开始跑至2500年,所以将y的初始值订为2000
S2:依据闰年规则而来,如果不能整除就印出" 不是闰年 "然後就跳到S6,再判断y是否大於
2500,如果没有重新执行一次回圈,如果大於跳出回圈
S3:S2不成立时执行此行,在此行判断是否被100整除,如果不能被100整除则印出" 是闰年 "然
後再跳到S6,再判断y是否大於2500,如果没有重新执行一次回圈,如果大於跳出回圈
S4:S3不成立时执行,在此判断是否被400整除,如果是就印出" 是闰年 "如果不是就印出不是"
闰年 "然後再跳到S6,再判断y是否大於2500,如果没有重新执行一次回圈,如果大於跳出回
圈
S7:直到y的值大於2500时停止回圈执行
END~
以下为程式码:
#include
#include
int main(int argc,char *argv[])
{
int year;
for(year=2000;year