大家好,今天小编关注到一个比较有意思的话题,就是关于c语言根据日期算星期几的问题,于是小编就整理了3个相关介绍c语言根据日期算星期几的解答,让我们一起看看吧。
C语言编程序实现如下功能:输入任意一个日期的年、月、日的值,求出是星期几并输出?
#include<stdio.h>
//公式是year +(year/4)+(century/4)-2*century+(26*(month+1)/10)+day-1,然后对7求余
voidmain()
{
intyear,w;
charweek[7][8]={"星期一","星期二","星期三","星期四","星期五","星期六","星期日"};
scanf("%d",&year);
w=(year+(year/4)+(year/100/4)-2*(year/100)+(26*2/10))%7;
printf("%s",week[w]);
}
计算与日期对应的星期,计算某个日期是星期几?
只需要知道三个代码日期代码+月份代码+年份代码就可以秒算任意年份任意日期的星期数方法1、日期代码指的是日期数,如3月18号,日期代码为18。4月7号,日期代码为7。2、月份代码(需要小小记忆)五月 是 0八月 是 1二月 三月 十一月 是 2六月 是 3九月 十二月 是4四月 七月 是5一月 十月 是 6如果遇到闰年 则二月代码变为1,一月代码变为5,其它不变。即,非闰年的月份代码为622503 514624,闰年的月份代码为512503 514624。3、年份代码举个例子 2010年的代码,我们用尾数10除以4(忽略余数)再加上10得到数字12,再用12除以7,得到的余数5就是2010年的代码。也就是说,心算出2000到2099任意年份的代码,只需将其后两位数X除以4(忽略余数),然后与X相加,并除以7就可以了,得到的余数就是其年份代码。10年的年份代码是5,11年年份代码为6。4、秒算任意日期的星期数如,我们算一下2010年4月25日日期代码25月份代码5年份代码5日期代码+月份代码+年份代码=25+5+5=3535是7的倍数,所以2010年4月25日是星期日再比如算一下2010年10月1日日期代码1月份代码6年份代码5日期代码+月份代码+年份代码=1+6+5=1212除以7余5,所以2010年10月1日是星期五如果得到的代码和是小于7的数,那么此数直接是星期数如果得到的代码和是大于7的数,那么将该数除以7得到的余数为星期数。方法二原理:蔡勒公式1、W=[C/4]-2C+y+[y/4]+[26(m+1)/10]+d-1 (其中[ ]为取整符号)2、其中,W是所求日期的星期数.如果求得的数大于7,可以减去7的倍数,直到余数小于7为止.c是公元年份的前两位数字,y是已知公元年份的后两位数字;m是月数,d是日数.方括[ ]表示只截取该数的整数部分。
C语言中,如何获取系统时间?
程序主要通过当前系统日历的struct tm结构体获得,主要代码如下,
#include <stdio.h>
#include <time.h>
//程序功能输出当前时间在24H下的小时数
int main(int argc, char *argv[])
{
struct tm *ptr;
time_t lt;
time(<);//当前系统时间
ptr=localtime(<);//获取本地日历时间指针
到此,以上就是小编对于c语言根据日期算星期几的问题就介绍到这了,希望介绍关于c语言根据日期算星期几的3点解答对大家有用。