类——日期类

定义一个Data类,定义Newday函数来实现增加一天的操作。

考点:在于分清是否为闰年,不同月份的天数。相对简单。

#include<iostream>
using namespace std;

class Data{
	private:
		int y,m,d;//年,月,日
	public:
		Data(){//自定义默认函数 
		}
		Data(Data &D){//拷贝函数 
			;
		} 
		Data(int y=0,int m=0,int d=0){//带参数构造函数 
			this->y=y;
			this->m=m;
			this->d=d;
		}
		
		bool Isrun(){//判断是否闰年为 
			if(y%400)//被400整除是闰年 
				return true;
			else if(y%4&&y%100!=0)//被4整除而不被100整除也是闰年 
				return true;
			else 
				return false;//其余正常 
		} 
		void Newday(){//增加一天 
			if(m==1||m==3||m==5||m==7||m==8||m==10){//大月31日 
				if(d==31){
					m++;
					d=1;
				}
				else
					d++;
			}
			else if(m==2){//2月 闰年29,平年28 
				if(Isrun()){
					if(d==29){
						m++;
						d=1;
					}
					else
						d++;
				}
				else{
					if(d==28){
						m++;
						d=1;
					}
					else
						d++;
				}
			}
			else{//其余月份30日 
				if(d==30){
					m++;
					d=1;
				}
				else
					d++;
			}
			cout<<y<<"."<<m<<"."<<d<<endl; //加一天之后直接输出,也可以返回Data对象,在调用Show函数 
		}
		void Show(){//显示日期 
			cout<<y<<"."<<m<<"."<<d<<endl; 
		} 
}; 
 

int main(){
	Data D1(2021,11,12);//定义日期 
	D1.Show();
	cout<<"一天后为:" ; 
	D1.Newday();
	return 0;
}




  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值