下面是乙個日期類的定義,請在類外實現其所有的方法,並在主函式中生成物件測試之。
注意,在判斷明天日期時,要加入跨月、跨年、閏年的判斷
例如9.月30日的明天是10月1日,12月31日的明天是第二年的1月1日
2月28日的明天要區分是否閏年,閏年則是2月29日,非閏年則是3月1日
輸入測試資料的組數t
第一組測試資料的年 月 日
要求第乙個日期的年月日初始化採用建構函式,第二個日期的年月日初始化採用setdate方法,第三個日期又採用建構函式,第四個日期又採用setdate方法,以此類推。
輸出輸出今天的日期
輸出明天的日期
----------------
樣例輸入
42012 1 3
2012 2 28
2012 3 31
2012 4 30
樣例輸出
today is 2012/01/03
tomorrow is 2012/01/04
today is 2012/02/28
tomorrow is 2012/02/29
today is 2012/03/31
tomorrow is 2012/04/01
today is 2012/04/30
tomorrow is 2012/05/01
#include
#include
using namespace std;
int a=
;int b=
;class date
date
(int year,
int month,
int day)
date
(date &t)
//設定日期
void
setdate
(int year,
int month,
int day)
//返回年
intgety()
//返回月
intgetm()
//返回日
intgetd()
//判斷是否閏年
intislunar()
return0;
}//獲取明天日期
date&
gettomorrow()
else
if(tmp.day+
1> b[tmp.month-1]
)else
}//非閏年用陣列 a
else
else
if(day+
1> a[month-1]
)else
}return tmp;
}//列印
void
print()
};void
printtodayandtomorrow
(date &t)
intmain()
}
資料結構與演算法 類與物件筆記
class complex c.returnadress 等效於 c float returnreal real是private,在成員函式中呼叫要用到this指標 函式模板是允許我們一次性定義一系列函式的辦法。例如,對不同型別資料可用的排序函式sort template class t retur...
redis 資料結構與物件
簡單說下redis的資料結構,這些在網上也都有很詳細的解釋,redis 設計與實現 這本書基於redis3.0的,但是現在已經5.0 了,所以有些資料結構發生了變化,其中我自己實現發現了一部分,可能還有沒發現的。慢慢實踐吧 簡單動態字串是在c語音傳統的字串基礎上構建的,其資料結構為 struct s...
Redis資料結構與物件
redis使用五種型別物件實現實現鍵值對資料庫 字串 列表 雜湊 集合 有序集合 列表編碼 ziplist或linkedlist 雜湊編碼 ziplist或hashtable 集合編碼 intset或hashtable 有序集合編碼 ziplist或skiplist struct sdshdr 二進...