⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 monthall.cpp

📁 自己编的万年历
💻 CPP
字号:
#include<iostream.h>
#include<conio.h>
#include<math.h>
#include<process.h>

enum months
{
   January=1,February,Marth,Aprial,May,June,
   July,August,September,October,November,December
};
bool isLeapYear(int &year)
{
	if(year%400==0||year%4==0&&year%100!=0)
		return true;
	else
	    return false;
}
int getmonthdays(int &y,int &d)
{
  int monthdays;
  int year=y;
  if(d==1||d==3||d==5||d==7||d==8||d==10||d==12)
   { monthdays=31;}
  else if(d==4||d==6||d==9||d==11)
   { monthdays=30;}
  else
    {
      if(isLeapYear(year))
	 monthdays=29;
      else
	 monthdays=28;
    }
   return monthdays;
}

void month_display(int &d)
{
  switch(months(d))
  {
  case 1:
    cout<<"January";break;
  case 2:
    cout<<"February";break;
  case 3:
    cout<<"March";break;
  case 4:
    cout<<"April";break;
  case 5:
    cout<<"May";break;
  case 6:
    cout<<"June";break;
  case 7:
    cout<<"July";break;
  case 8:
    cout<<"August";break;
  case 9:
    cout<<"September";break;
  case 10:
    cout<<"October";break;
  case 11:
    cout<<"November";break;
  case 12:
    cout<<"December";break;
  }
};
void display(int &year,int &start)
{
   int start_day=start;
   int nyear=year;
   int count;
   if(isLeapYear(nyear))
     cout<<"The year "<<nyear<<" is a leap year!";
   else
     cout<<"The year "<<nyear<<" is not a leap year!";
   cout<<endl;
   cout<<endl;
   cout<<"Press any key to continue ......";
for(int e=1;e<=12;e++)
{
   getch();
   cout<<endl;
   cout<<endl;
   month_display(e);
   count=1;
   cout<<endl;
   cout<<"Sun\tMon\tTue\tWed\tThr\tFri\tSat\n";
   for(int i=0;i<start_day;i++)
   {
     cout<<"\t";
   }
   for(int k=1;k<=7-start_day;k++)
   {
     cout<<k<<"\t";
   }
   for(int j=k,m=0;j<=getmonthdays(nyear,e); j++,m++)
   {
    if(m%7==0)
    {
       cout<<endl;
       count++;
    }
     cout<<j<<"\t";
   }
   start_day=7-(count*7-start_day-getmonthdays(nyear,e));
}
   cout<<endl;
}

void read(int &y,int &start)
{
   int nyear;
   int start_day=-1;

   cout<<"Enter a year:\n";
   cin>>nyear;
   y=nyear;
   cout<<"Enter the first day of this month\n";
   while(start_day==-1)
   {
   cin>>start_day;
   if(start_day>=7)
     {
       cout<<"Please input a day in a week(0--6)!"<<endl;
       start_day=-1;
     }
   }
   start=start_day;
}
main()
{
   int year,start_day;  
   read(year,start_day);
   cout<<endl;
   display(year,start_day);
   getch();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -