c语言编程万年历查询程序。

实验名称:万年历查询和打印

内容:设计一个程序来查询和打印万年历。

步骤:

1.绘制程序流程图;

2.写程序;

3.调试程序,分析调试过程中的问题,找出错误的原因并加以纠正;

4.通过调试和修改写出正确的原程序。

要求:

1.程序运行后,首先在屏幕上显示主菜单:

1.查询今天是星期几。

2.查询某年是否是闰年。

3.打印某一年的日历

辞职

2.在主菜单中输入1后,将显示:

请输入年、月、日(XXXX,XX,XX)

运行后的输出:XX,XX,XXXX是第x周。是否要继续查询(Y/N)?

如果输入y,将再次显示“请输入年、月、日(XXXX,XX,XX)”,否则将返回主菜单。

3.在主菜单中输入2后,将显示:

“请输入要检查的年份?XXXX)

运行后的输出:是(否)在XXXX是闰年。继续查询(是/否)?

如果输入y,它将再次显示。“请输入要检查的年份?(XXXX)”,否则返回主菜单。

4.在主菜单中输入3后,将显示:

“请输入要打印的年份(XXXX)“

运行后,以以下格式输出XXXX日历:

XXXX

x月数

0 1 2 3 4 5 6

S M T W T F S

××年××月××日

x x年xx月xx日

xx年xx月xx日

xx年xx月xx日

xx xx xx

x月数

0 1 2 3 4 5 6

S M T W T F S

××××

x x年xx月xx日

xx年xx月xx日

xx年xx月xx日

xx xx xx xx xx

“您想继续打印吗(是/否)?“运行后将显示。

如果输入y,将再次显示“请输入要打印的年份(XXXX)”,否则将返回主菜单。

5.在主菜单中输入4后,将显示:“您真的要退出吗(Y/N)?”

如果输入y,结束程序运行,否则主菜单将再次显示。

提示:

1.闰年的计算:闰年是指满足以下两个要求之一的年份:

能被4整除,但不能被100整除;

能被4整除,能被400整除。

闰年的二月是29天,正常年份的二月是28天。

3.星期几的计算:

s = X-1+(X-1)/4+(X-1)/100+(X-1)/400+C

x是年份,C是从元旦到今天的天数。

S/7的剩余部分不仅仅是星期数。

示例1:1982 65438+2月2 6日。

由于1982不是闰年(不能被4整除),因此该年的二月是28天。

c = 31+28+31+30+31+30+31+31+30+31+30+26 = 360

(1月至11月的天数+12月的实际天数)

s = 1982-1+(1982-1)/4+(1982-1)/100+(1982-1)/400+360 = 2821.3925

S/7 = 2821/7 = 403余数是0,所以这一天是星期天。

例2:2000年3月8日

由于2000年是闰年(可被4、100和400整除),因此该年的二月是29天。

c = 31+29+8 = 68(1月到2月的天数+3月的实际天数)

s = 2000-1+(2000-1)/4+(2000-1)/100+(2000-1)/400+68 = 2551.757

S/7 = 2551/7 = 364余数是3,所以今天是星期三。