全球旧事资料 分类
西安科技大学
《C语言程序设计》课程设计报告


万年历
电气与控制工程学院微电子系微电子1001刘建辉刘鑫张莉莉20110706
院、系部专业及班级姓日名期
f万年历刘建辉张莉莉刘鑫1功能要求:(1)输入一个年份,输出是在屏幕上显示该年的日历。假定输入的年份在19402040年之间。(2)输入年月,输出该月的日历。(3)输入年月日,输出距今天还有多少天,星期几,是否是公历节日。设计思路:设置两个数组:一维m数组存放月份的天数,如m831,即8月份为31天;二维数组d数组存放日号,如d32411,即3月份第2个星期的星期四为11号,其中24分解为十位数字2与个位数字4。根据历法,设y年元旦是星期w(取值为06,其中0为星期日),整数w的计算公式为:
wyy1y1y174100400
其中为取整。
设置三重循环i,j,k为d数组的的(i,j10k)赋值。i112,表示月份号;j16,表示每月约定最多6个星期;k06,表示星期k。从元旦的a1开始,每赋一个元素,a增1,同时wk1。当w7时,w0(为星期日)。当ami时,终止第i月的赋值操作。2总体设计(1),系统业务处理流程:
f开始
输入选项pp值
PA或B或C
输入年份p值
计算该年第一天的星期
输入年月p值判断闰年平年
输入当前年月日
输入查询年月日
wy
y1y1y174100400

二月为29天

二月为28天
i0
iy1
判断闰年平年
S0,i0

判断闰

二月为28天
im1
年平年
二月为29天

ssaiwy1y14y1100y1400s

smy1sumy1365
smy1sumy1366i
i0
17
i
i〈12
d0
j0
d0
j0
jm11
j1
j6sum1sum1ai
k0
j〈6
j
k6k0
sum1sumy1summ1d1
fda〔i〕
J10k10w
判断闰年平年

换行
sumysumy366

smysumy365
dd1
输出wk1j
da〔i〕
输空格
kj0
换行
j
jm1
输出wk1
sumsummaj
输空格
j
ksumsumysujmmdssum1sumi得出日期的相差数
s0i0
im1
SsaiSsdwy1y14y1100y1400s7i判断是否有节日
结束
f结束
3,详细设计:A.大体框架:对于所给出的万年历要满足三个功能即查询某一年的年历表,某一年单月的月历,某一年某一月某一日具体的信息包含星期几,是否有公历节日,距离当前时间所差的天数三个小的功能。a功能A:查询某一年的年历表。主题思想将一年每个月的天数存放在一个数组中以r
好听全球资料 返回顶部