55问答网
所有问题
C++编写万年历的问题
已知2005年的10月20日是星期四,以此编写万年历,输出任意年份的日历。
怎么由已知推出任意年的元旦是星期几??
如题,请不要随便复制粘贴别的什么代码,我要的是思路。
举报该问题
推荐答案 2009-10-20
这个程序我编写过,如果按照实际的日历来算,跟本不需要知道这些信息比如:05年的10月20日是星期四,仅仅只需要知道今天或者任何一天是星期几就可以了。
我是这样做的,由今天是星期几算出公元0年1月1日是星期几,然后程序输入任意年份,定义int days = inputyear*365+intputmonth*(用switch判断一下),用days % 7 算出当前月份第一天是星期几,就可以输出任意年份,任意月份的日历。
具体细节你自己去调试吧
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://55.wendadaohang.com/zd/IFFI8LFc8.html
其他回答
第1个回答 2009-10-20
1)输入年份,处理该年份的各月天数(闰年处理)。
2)根据已知日期,就算当前年份第一天距已知日期是多少天,从而计算第一天是周几。
3)根据1)得到的数据,每个月份输出日期就可以了。
大概思路就这样了。
前两步应该没什么问题。
第3步处理比较复杂,要细心。
第2个回答 2009-10-20
最简单的方法,直接套计算式
Kim Skak Larsen 计算公式
W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7
d表示日期中的日数,m表示月份数,y表示年数。
把一月和二月看成是上一年的十三月和十四月
相似回答
C++
新手 【
万年历
】输出第一行为什么会这样,还有怎么把日期拉上去,哪里...
答:
首先做几个子函数,不用也可 其实这个
问题
就是算当前月的第一天是周几 也就是算当前月的第一天距离公元1年1月1日有多少天 你用mun来表示 s=year-1+(year-1)/4-(year-1)/100+(year-1)/400+c;num=s%7;定义一个数组,定义每个月的天数,int m[12]={31,28,31,30,31,30,31,31,30...
C++
新手 【
万年历
】输出第一行为什么会这样,还有怎么把日期拉上去,哪里...
答:
include <iomanip.h> int main(){ int c,i,x,s,num,year,month,day,j=1,k=1;cin>>year>>month; cout<<"本年1月1号是星期几?"<<endl;cin>>j;{ if(((year%4==0)&&(year%100!=0))||(year%400==0)) x=29;else x=28;if (month==1) c=1;else if (month==2) c=...
C++万年历
,输入年月,显示月历
答:
include <stdio.h> include <stdlib.h> int f(int year,int month){/*f(年,月)=年-1,如月<3;否则,f(年,月)=年*/ if(month<3) return year-1;else return year;} int g(int month){/*g(月)=月+13,如月<3;否则,g(月)=月+1*/ if(month<3) return month+13;els...
C++编写万年历的问题
答:
这个程序我
编写
过,如果按照实际的日历来算,跟本不需要知道这些信息比如:05年的10月20日是星期四,仅仅只需要知道今天或者任何一天是星期几就可以了。我是这样做的,由今天是星期几算出公元0年1月1日是星期几,然后程序输入任意年份,定义int days = inputyear*365+intputmonth*(用switch判断一下...
C或
C++
编程实现
万年历
程序,按每行两个月的格式
答:
C或
C++
编程实现
万年历
程序。主要功能为在屏幕上显示任意年月的月历,按每行两个月的格式输出当年或指定的任意年的年历。不要发错的给我啊。而且闰年二月要显示29天,每行显示两个月。... C或C++编程实现万年历程序。主要功能为在屏幕上显示任意年月的月历,按每行两个月的格式输出当年或指定的任意年的年历。不...
大家正在搜
c语言万年历输出年历
万年历是谁编的
用c语言编写万年历程序
万年历编程
万年历怎么做出来的
电子万年历程序怎么写
最实用的万年历
万年历是谁推出的
万年历没有20年怎么办