计算某年某月某天是星期几

1求某年某月某日是星期几

#include <stdio.h>
int main()
{
    int y, m, d;
    scanf("%d%d%d", &y, &m, &d);
    int M, C, X, ans;
    M = (m-3) % 12 + 1;
    C = y / 100;//比如1949年那么C = 19, X = 49;
    X = y % 100;
    ans = X + X / 4 + C / 4 - 2 * C + 2 * M +(M + M/7)/2 + M /12 + d % 7;
    ans %= 7;
    printf("%d\n", ans);
    return 0;
}
时间: 2024-10-13 08:06:12

计算某年某月某天是星期几的相关文章

【Java】运用泽勒一致性计算某天是星期几

1 /** 2 * Created by liangjiahao on 2017/2/26. 3 * 运用泽勒一致性计算某天是星期几? 4 * 公式: 5 * h = (q + 26(m+1)/10 + k +k/4 + j/4 +5j) % 7 6 * 7 */ 8 9 10 import java.util.Scanner; 11 public class Zeller { 12 public static void main(String args[]){ 13 Scanner imput

iOS 计算某个月的天数 计算某天的星期

// 某年某月的天数 - (NSInteger)dayCount:(NSInteger)years { NSInteger count = 0; for (int i = 1; i <= 12; i++) { if (2 == i) { if((years % 4 == 0 && years % 100!=0) || years % 400 == 0) //是闰年 { count = 29; } else { count = 28; } }else if (4 == i || 6 =

java获取某年某月某日是星期几(极简方法)

package com.ttest2; class test { public int GetWeek(int y, int m, int d) { if (m < 3) { m += 12; --y; } int w = (d + 1 + 2 * m + 3 * (m + 1) / 5 + y + (y >> 2) - y / 100 + y / 400) % 7; return w; }} public class Demo2 { public static void main(St

NSDate增加分类 计算某年某月某日

#import <Foundation/Foundation.h> @interface NSDate (Addition) /** *某一天在当月多少号 */ - (NSInteger)daysOfCurrentMonth; /** *  某月第一天周几 * */ - (NSInteger)weekOfFirstDayInCurrentMonth; - (NSInteger)day; - (NSInteger)month; - (NSInteger)year; - (NSString *)d

单元测试中测试用例的设计方法

单元测试中测试用例的设计方法 1. 用于语句覆盖的基路径法 基路径法保证设计出的测试用例,使程序的每一个可执行语句至少执行一次,即实现语句覆盖.基路径法是理论与应用脱节的典型,基本上没有应用价值,读者稍作了解即可,不必理解和掌握. 基路径法步骤如下: 1)画出程序的控制流图 控制流图是描述程序控制流的一种图示方法,主要由结点和边构成,边代表控制流的方向,节点代表控制流的汇聚处,边和结点圈定的空间叫做区域,下面是控制流图的基本元素: 以下代码: void Sort(int iRecordNum,

蔡勒公式求今天是星期几?

之所以知道蔡勒公式,是因为今天在九度上做的一道题目[题目1043:Day of Week].以前也曾经做过求星期几这样的题目,当时的做法比较粗暴:已经知道某年某月某日是星期几,要求现在给的某天是星期几,直接求给的日期和已知日期的相差天数对7取余,再根据已知的星期做相应的调整即可.这样的做法不仅繁琐,而且一不留神就有可能算错.这次又碰到类似的题目,希望尝试新的方法.于是在查资料的过程中,知道了蔡勒公式.于是用蔡勒公式来解决了这道题目,虽然知道蔡勒公式,但是在使用过程中依旧错误不断.其实是因为对蔡勒

第16/24周 SQL Server 2014中的基数计算

大家好,欢迎回到性能调优培训.上个星期我们讨论在SQL Server里基数计算过程里的一些问题.今天我们继续详细谈下,SQL Server 2014里引入的新基数计算. 新基数计算 SQL Server 2014里一个增强是新的基数计算.上个星期你已经学到老基数计算有些限制,会生成错误的估计,这会导致不好的执行计划表现.截至SQL Server 2012,你一直在使用自SQL Server 7.0引入的基数计算. 当然,几年来也有很多问题被修正,但默认它们都没启用的——你需要启用SQL Serv

分支-13. 计算天数(15)

本题要求编写程序计算某年某月某日是该年中的第几天. 输入格式: 输入在一行中按照格式"yyyy/mm/dd"(即"年/月/日")给出日期.注意:闰年的判别条件是该年年份能被4整除但不能被100整除.或者能被400整除.闰年的2月有29天. 输出格式: 在一行输出日期是该年中的第几天. 输入样例1: 2009/03/02 输出样例1: 61 输入样例2: 2000/03/02 输出样例2: 62 import java.util.Scanner; public cla

练习7-9 计算天数 (15分)

本题要求编写程序计算某年某月某日是该年中的第几天. 输入格式: 输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期.注意:闰年的判别条件是该年年份能被4整除但不能被100整除.或者能被400整除.闰年的2月有29天. 输出格式: 在一行输出日期是该年中的第几天. 输入样例1: 2009/03/02 输出样例1: 61 输入样例2: 2000/03/02 输出样例2: 62 #include<stdio.h> int main() { int nian,yue,ri; in