我自己用c++语言编的电子日历

#include <iostream.h>
#include <iomanip.h>
int month[12]={31,28,31,30,31,30,31,31,30,31,30,31};   
class calendar
{
public:
calendar(int y,int m)
{
yy=y;
mm=m;

void displaycalendar();   
int coutleapyear();      
private:
int yy;
int mm;
};
void calendar::displaycalendar()
{
int day,fristDay,tempDay=0,dayMonth,totalDay,line=0;
day=(yy-1900)+coutleapyear();      
fristDay=day%7;
for (int i=1;i<mm;i++)
{
tempDay+=month[i-1];
}
if ((yy%4==0&&yy%100!=0||yy%400==0)&&mm>2)
{
tempDay=tempDay+1;
}
dayMonth=month[mm-1];      
if ((yy%4==0&&yy%100!=0||yy%400==0)&&mm==2)
{
dayMonth=29;
}
cout<<"        年"<<yy<<"    月"<<mm<<endl;
cout<<setw(5)<<"mon"<<setw(5)<<"tue"<<setw(5)<<"wed"<<setw(5)<<"thu"<<setw(5)<<"fri"<<setw(5)<<"sat"<<setw(5)<<"sun"<<endl;
cout<<endl;
totalDay=fristDay+tempDay;
for (i=0;i<totalDay%7;i++)
{
cout<<setw(5)<<" ";
line++;
}
for (i=1;i<=dayMonth;i++)
{
cout<<setw(5)<<i;       
line++;
if (line%7==0)       
{
cout<<endl;
}
}
}
int calendar::coutleapyear()
{
int count=0;               
for (int i=1900;i<yy;i++)  
{
if(i%4==0&&i%100!=0||i%400==0)
{
count++;
}
}
return count;
}
void main()
{
int year;
int month;
cout<<"请输入年,月"<<endl;
cin>>year>>month;
while((year<1900)&&(month<1||month>12))
{
cin>>year>>month;
}
calendar cal(year,month);
cal.displaycalendar();
cout<<endl;   
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值