printmonth里面的限制搞错了: for(d=1;d<smax+1;d++)
还有下面,原来的搞法覆盖了最后一天:)
if(day.w!=6)
{int i;
for(i=day.w+1;i<7;i++)
{ move(6+t*2-1,38+i*18);
prints("^[[34m ^[[34m│");
move(6+t*2,38+i*18);
prints("^[[34m ^[[34m│");
}
t++;
}
多谢提醒,只顾得对照农历和复活节,反倒把这些都弄错了……
【 在 ELM.bbs@bbs.neu.edu.cn (我已经很累了...) 的大作中提到: 】
: 在显示界面上有一点问题,第一次进入时很正常,如果经过任何操作
: 背景颜色就变化了:(
: 还有就是2002年5月显示32号,2003年1月也是,还有一些月份都如此
: 我是通过不显示大于31的日子,不知道有没有其他解决方法
: 【 在 xueshun.bbs@bbs.swjtu.edu.cn (午夜凶灵) 的大作中提到: 】
: : typedef struct tag_lunar
: : { int leap;
: : int sy,ly;
: : int sm,lm;
: : int sd,ld;
: : int jq;
: : int w;
: : }lunar_t;
: : int smonth_max(int y,int m);
: : int countday(int sy,int sm,int sd);
: : .................(以下省略)
--
FROM bbs.swjtu.edu.cn