今天星期几
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
/*给定一个日期,求出该日为星期几(已知2002-3-28为星期四)*/ #include
using namespace std;
typedefstruct date
{
int year;
int month;
int day;
}date;
intdaysofyear(date da)
{
boolrun_ping=false;
int count=0;
if((da.year%4==0&&da.year%10==0)||da.year%400==0)
{
run_ping=true;
}
switch (da.month)
{
case 1:count+=0;break;
case 2:count+=31;break;
case 3:count+=59;break;
case 4:count+=90;break;
case 5:count+=120;break;
case 6:count+=151;break;
case 7:count+=181;break;
case 8:count+=212;break;
case 9:count+=243;break;
case 10:count+=273;break;
case 11:count+=304;break;
case 12:count+=334;break;
default:
break;
}
count+=da.day;
if(run_ping)
{
count++;
}
return count;
}
intYearToYear(int year1,int year2)//此函数表示计算年与年之间有多少天{//此处默认情况下year1 inti=0,count=0; for(i=year1;i { if((i%4==0&&i%10!=0)||i%400==0) { count+=366; } else { count+=365; } } return count; } intWeekOfDate(date dat) { datedate_con={2002,3,8}; intnum=0; intyeartoyear; int num1=daysofyear(date_con); int num2=daysofyear(dat); if(date_con.year>dat.year) { num-=YearToYear(dat.year,date_con.year); } else if(date_con.year { num+=YearToYear(date_con.year,dat.year); } num=num+num2-num1; return ((num%7+4+7)%7)+1; } void main() { date da; char c; cout<<"请输入年-月-日:"< cin>>da.year>>c>>da.month>>c>>da.day; cout<<"这天为星期"<