注册 登录
编程论坛 C++教室

判定从2000年到2500年的每一年是否闰年,并输出结果

xuanyin 发布于 2013-10-16 11:05, 780 次点击
程序代码:

#include"stdio.h"
main()
{
    int a,year;
    for(year=2000;year<=2500;year++)
    {
        a=(year%4==0&&year%100!=0)||year%400==0;
        if(a!=0)
            printf("%d年是闰年!\n",year);
        else
            printf("%d年不是闰年!\n",year);
        
    }
}

发现结果不对,输出结果从2202年开始,但单步调试又没看出错误,怎么回事?
只有本站会员才能查看附件,请 登录
9 回复
#2
wp2319572013-10-16 11:12
有啥问题
#3
wp2319572013-10-16 11:14
cmd命令行吃掉了一部分结果   你可以缩小数据区间试一下  或者用管道转到文件里 自己看
#4
xuanyin2013-10-16 11:34
回复 3楼 wp231957
刚试了下缩小区间可以,那有没有办法让它在cmd命令中全部显示出来?
#5
yuccn2013-10-16 12:25
500行,显示不下吧,分块来打印就行了
先打印平年后打印闰年
#6
在这里爬起2013-10-16 13:19
DOS只显示后三百行,有命令可以显示前面的行数具体的原因可以上网搜搜。
#7
wp2319572013-10-16 13:44
以下是引用xuanyin在2013-10-16 11:34:12的发言:

刚试了下缩小区间可以,那有没有办法让它在cmd命令中全部显示出来?
管道 比如  c:\> dir  然后再测试  c:\>dir >1.txt  然后 文本编辑器+1.txt
#8
wp2319572013-10-16 13:48
还有一种办法 就是 使用more命令

比如     你的exe.exe | more
#9
blueskiner2013-10-16 14:19
0==y%4 && (0!=y%100 || 0==y%400)
#10
苑天尤2013-10-17 19:23
表示没发现错误啊
1