pta習題 退休日期推算

2022-08-25 10:30:35 字數 1656 閱讀 2064

6-3 退休日期推算 (10分)

關於日期的結構定義如下: struct dateg;

編寫兩個函式,乙個計算自公元1年1月1日到指定的日期共經歷了多少天。另乙個是前乙個函式的逆函式:由自公元1年1月1日歷經指定的天數後的日期(返回年月日構成的日期)。

dateg days2date(int x); + 100-->

int days(dateg x);// return 465 from

#include using namespace std;

struct dateg;

char leapyear(int year);//閏年否

struct dateg _dateg(char *st);

struct dateg add(struct dateg x,int y);//+50-->

char* date2string(struct dateg x);//-->"1919-09-09"

//以上為測試程式提供的測試用函式,略去不表,

//以下兩函式是必須自己完成的函式

struct dateg days2date(int x);//from: + 100-->

int days(struct dateg x);// return 465 from

int main()

/* 請在這裡填寫答案 */

2001-1-1
[2060-12-17]

[2058-03-23]

19.07

幫其他專業的同學寫網課作業,見到這道有點煩人的題目,一看網上沒有現成的答案,那就自己寫乙份先碼這把,沒啥特別的技巧,典型的模擬,注意細節就好。

struct dateg days2date(int x) 

}else if (qwq.mm == 2 && qwq.dd > 29)

else if ((qwq.mm == 4 || qwq.mm == 6 || qwq.mm == 9 || qwq.mm == 11) && qwq.dd > 30)

}else

}else if (qwq.mm == 2 && qwq.dd > 28)

else if ((qwq.mm == 2 || qwq.mm == 4 || qwq.mm == 6 || qwq.mm == 9 || qwq.mm == 11) && qwq.dd > 30) }}

return qwq;

}int days(struct dateg x)

}else if ((x.mm == 2 || x.mm == 4 || x.mm == 6 || x.mm == 9 || x.mm == 11) && x.dd == 0)

}else

}else if ((x.mm == 2 || x.mm == 4 || x.mm == 6 || x.mm == 9 || x.mm == 11) && x.dd == 0)

}if (x.yy == 1 && x.mm == 1 && x.dd == 1)

flag = 0;

}return res;

}

日期的推算

日期的推算 轉鄒老大的 declare dt datetime set dt getdate declare number int set number 3 1 指定日期該年的第一天或最後一天 a.年的第一天 select convert char 5 dt,120 1 1 b.年的最後一天 sel...

SQL日期推算

declare dt as datetime set dt getdate select cast convert varchar 8 dateadd month,datepart quarter,dt 3 month dt 2 dt 120 01 as datetime result 2008 1...

MySql日期處理系列 常用的日期推算處理

title 常用的日期推算處理 auther 小強 占卜師 date 2007 12 25 取得當前日期 set dt curdate select dt 當前日期這個月的第一天 select concat left dt,8 1 當前日期這個月的最後一天 select date sub conca...