星期几--蓝桥杯
欢迎访问我的新博客:http://www.milkcu.com/blog/
原文地址:http://www.milkcu.com/blog/archives/1367191680.html
前言
本题摘自“2012年第三届蓝桥杯全国软件大赛决赛(C本科)”第1题,由MilkCu整理。
题目描述
1949年的国庆节(10月1日)是星期六。
今年(2012)的国庆节是星期一。
那么,从建国到现在,有几次国庆节正好是星期日呢?
只要答案,不限手段!
可以用windows日历,windows计算器,Excel公式,。。。。。
当然,也可以编程!
不要求写出具体是哪些年,只要一个数目!
千万不要提交源代码!
答案不要写在这里,写在“解答.txt”中
分析
本题用到的较多的是取余的使用。
源代码
# include <stdio.h> int yday(int year); int main(void) { int year; int n; //是星期日的天数 int w; //星期几 n = 0; w = 6; for(year = 1950; year < 2013; year++) { w = (yday(year) % 7 + w) % 7; if(w == 0) { n++; } } printf("%d", n); } int yday(int year) { if((year % 4 == 0) && (year % 100 != 0) || (year % 400 == 0)) { return 366; } else { return 365; } }
最后答案
63(感谢Dreamcaihao、lorraine0416的质疑)
9