标题:类和对象
关键词:日期类的设计
内容:
A今日完成情况
关键词:日期类的设计
内容:
A今日完成情况
1.看类30%
B具体内容
取得系统的日期:void SetSystemDate()
日期类函数
#include<iostream>
#include<time.h>
using namespace std;
class Date
{
private:
int year,month,day;
void SetSystemDate();
public:
void init(int,int,int);
void print_ymd();
void print_mdy();
int get_year(){return year;}
int get_month(){return month;}
int get_day(){return day;}
bool IsLeapYear();
} ;
void Date::SetSystemDate()
{
tm *gm;
time_t t=time(NULL);
gm=gmtime(&t);
year=1900+gm->tm_year;
month=gm->tm_mon+1;
day=gm->tm_mday;
}
void Date::init(int yy,int mm,int dd)
{
if(yy>=1900&&yy<=9999)
year=yy;
else
{
SetSystemDate();
return;
}
if(mm>=1&&mm<=12)
month=mm;
else
{
SetSystemDate();
return;
}
if(dd>=1&&dd<=31)
day=dd;
else
{
SetSystemDate();
return;
}
}
void Date::print_ymd()
{
cout<<year<<"-"<<month<<"-"<<day<<endl;
}
void Date::print_mdy()
{
cout<<month<<"-"<<day<<"-"<<year<<endl;
}
bool Date::IsLeapYear()
{
if(year%400==0||(year%100!=0&&year%4==0))
return true;
else
return false;
}
int main()
{
Date date1;
date1.print_ymd();
system("pause");
date1.init(2016,11,9);
date1.print_ymd();
system("pause");
Date date2;
date2.init(2000,62,22);
date2.print_mdy();
system("pause");
if(date1.IsLeapYear())
cout<<date1.get_year()<<"是闰年"<<endl;
else
cout<<date1.get_year()<<"不是闰年"<<endl;
return 0;
}
C明日计划
A结构化和面向程序的函数设计