大家讨论一下
知道1900.1.1是星期一、输入一个N(<=400)、求这N年中每个月的13号分别落到星期几大家说说该如何入手?
搜索更多相关的解决方案:
输入
----------------解决方案--------------------------------------------------------
这种题目,如果让你用大脑计算,你会怎么算?
一步一步记下来,写成代码就可以了~加油
----------------解决方案--------------------------------------------------------
问你两个问题,
1。今天是星期2,3天后是星期几,30天后是星期几,300天后是星期几。
2。今天是2007/8/14,2010/1/1距离今天几天?
----------------解决方案--------------------------------------------------------
我觉得先算出1900.1.1离现在有多少天(关于这个有很多例题),然后除以7的余数就是星期几了
----------------解决方案--------------------------------------------------------
同意楼上说的,不过有些太言简意赅了。
大体上先判断出1900-N年是所有年份闰年还是非闰年,这个可以用FOR语句做到,然后把1900-N年的所有天数加起来,
最后处以7
----------------解决方案--------------------------------------------------------
有空可以看看这个
http://yzfy.org/bbs/viewthread.php?tid=340
----------------解决方案--------------------------------------------------------
提供一个子程序供参考
void kao(int year,int month,int day)
{
int xuanzhe[2][12]={{31,28,31,30,31,30,31,31,30,31,30,31},{31,28,31,30,31,30,31,31,30,31,30,31}};
int k,l,leap=(year%4==0&&year%100!=0)||(year%400==0);
for(k=0;k<month;k++)
day=day+xuanzhe[leap][k];
for(k=1990;k<year;k++)
leap=(k%4==0&&k%100!=0)||(k%400==0);
for(l=0;l<12;l++)
day=day+xuanzhe[leap][l];
return day;
}
有兴趣的还可以将它优化一下。
----------------解决方案--------------------------------------------------------
嗯,二维数组可以改一维
----------------解决方案--------------------------------------------------------