QQ网名大全

【加急】用c语言做万年历

分数太少了吧,呵呵
除了农历,都比较好做

功能,用一个printf打印功能目录,switch调用子函数来完成,要是多次,加一个大循环即可

日历显示,这个比较简单,就是计算这一年的第一天是周几即可
原理:公元1年1月1日是周一,计算这一年的第一天和公元1年1月1日中间的天数,除以7余下的就是周几。一年又365天,364刚好是7的倍数,那么一年就是多出一天,闰年再加上一天。还有一个更简单的,400年刚好是一个轮回,也就是说400+97=497也是7的倍数
那么输入年后,除以400,余下的年份再计算天数,计算量会小很多,呵呵
这样这一年的第一天是周几就计算好了
这里最好做一个子函数来实现这个功能,返回值是这一年的第一天是周几,后面能用到

接下来是打印,这里做子函数是不错的选择,
设置一个全局数组保存月份的天数,用一个if判断2月份的天数
这里有个技巧,就是设置一个变量,保存每个月的最后一天是周几,因为是连续的,所以下一个月的第一天是周几很好确定,就是打印几个空格刚好是这个变量的值,呵呵

计算日期的周几也很好办,知道这一年的第一天是周几,那么日期到这一年的第一天差几天,用一个for循环很好的就能计算出来,

农历这个不好做,你可以一下,有那种子函数,可以参考一下,只是近似值

后面的两个功能,是文件的读写,很简单,套用文件那里的固定格式即可,变化不大
佚名
2024-05-25 11:51:09
最佳回答
类似问题(10)