国庆星期日 1949年的国庆节(10月1日)是星期六。 今年(2012)的国庆节是星期一。

来源:互联网 发布:手机文字游戏源码 编辑:程序博客网 时间:2024/04/28 00:37
/*国庆星期日1949年的国庆节(10月1日)是星期六。 今年(2012)的国庆节是星期一。那么,从建国到现在,有几次国庆节正好是星期日呢?只要答案,不限手段!可以用windows日历,windows计算器,Excel公式,。。。。。当然,也可以编程!不要求写出具体是哪些年,只要一个数目!千万不要提交源代码!答案不要写在这里,写在“解答.txt”中 */public class T17 {public static int calc(int n,int m,int d){int[][] days = {{0,31,28,31,30,31,30,31,31,30,31,30,31},// 平年   {0,31,29,31,30,31,30,31,31,30,31,30,31}};// 闰年int b = 0;// 默认为平年if(n%4==0&&n%100!=0||n%400==0) b = 1;// 是闰年int sum = d;for(int i=0;i<m;i++){sum += days[b][i];}return sum;}public static void main(String[] args){int count = 0;// 1949年的国庆节(10月2日)是星期日。 // 得到这年10月2号后的的剩余天数int total = calc(1949,12,31)-calc(1949,10,2);for(int i=1950;i<2012;i++){// calc(i)计算每年的10月1日是这一年的第天数,再用总天数对7取余==0说明是周日total += calc(i,10,1);// 计算当年到10月1的总天数if(total%7==0){System.out.println(i+"年10月1日");count++;// 次数加1}}System.out.println("总数:"+count);}}
运行结果:
1950年10月1日1961年10月1日1967年10月1日1972年10月1日1978年10月1日1989年10月1日1995年10月1日2000年10月1日2006年10月1日总数:9