
c++程序 某年某月某日是星期几(必须用C++语言编写)
2个回答
2012-01-02
展开全部
#include <iostream>
#include<cmath>
using namespace std;
char str[7][10]={"星期天","星期一","星期二","星期三","星期四","星期五","星期六"};
int year,month,day;
int IsLeapYear()
{
if((year%4==0&&year%100!=0)||(year%400==0))
return 1;
else
return 0;
}
int month_day(int m)
{
int mon_day[]={31,28,31,30,31,30,31,31,30,31,30,31};
if(IsLeapYear()&&m==2)
return 29;
else
return(mon_day[m-1]);
}
void DaySearch()
{
int c=0;
float s;
int m;
for(m=1;m<month;m++)
c=c+month_day(m);
c=c+day;
s=year-1+(float)(year-1)/4+(float)(year-1)/100+(float)(year-1)/400-40+c;
cout<<year<<"年"<<month<<"月"<<day<<"日是"<<str[(int)s%7]<<endl;
}
int main()
{
cout<<"输入年:";
cin>>year;
cout<<endl;
cout<<"输入月:";
cin>>month;
cout<<endl;
cout<<"输入日:";
cin>>day;
cout<<endl;
DaySearch();
system("pause");
return 0;
}
#include<cmath>
using namespace std;
char str[7][10]={"星期天","星期一","星期二","星期三","星期四","星期五","星期六"};
int year,month,day;
int IsLeapYear()
{
if((year%4==0&&year%100!=0)||(year%400==0))
return 1;
else
return 0;
}
int month_day(int m)
{
int mon_day[]={31,28,31,30,31,30,31,31,30,31,30,31};
if(IsLeapYear()&&m==2)
return 29;
else
return(mon_day[m-1]);
}
void DaySearch()
{
int c=0;
float s;
int m;
for(m=1;m<month;m++)
c=c+month_day(m);
c=c+day;
s=year-1+(float)(year-1)/4+(float)(year-1)/100+(float)(year-1)/400-40+c;
cout<<year<<"年"<<month<<"月"<<day<<"日是"<<str[(int)s%7]<<endl;
}
int main()
{
cout<<"输入年:";
cin>>year;
cout<<endl;
cout<<"输入月:";
cin>>month;
cout<<endl;
cout<<"输入日:";
cin>>day;
cout<<endl;
DaySearch();
system("pause");
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询