星期几--蓝桥杯

45 篇文章 24 订阅
43 篇文章 1 订阅

欢迎访问我的新博客: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(感谢Dreamcaihaolorraine0416的质疑)

9

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值