csp試題2 日期計算

2021-09-27 01:20:59 字數 979 閱讀 3895

問題描述

給定乙個年份y和乙個整數d,問這一年的第d天是幾月幾日?

注意閏年的2月有29天。滿足下面條件之一的是閏年:

1) 年份是4的整數倍,而且不是100的整數倍;

2) 年份是400的整數倍。

輸入格式

輸入的第一行包含乙個整數y,表示年份,年份在1900到2015之間(包含1900和2015)。

輸入的第二行包含乙個整數d,d在1至365之間。

輸出格式

輸出兩行,每行乙個整數,分別表示答案的月份和日期。

樣例1

輸入:

2015

80

輸出:

3

21

樣例2

輸入:

2000

40

輸出:

2

9

想要知道第d天是幾月幾日,首先要知道的是這一年中12個月份各自的天數,12個月中只有2月的天數是會變化的,我們需要根據不同年份來設定2月的天數。

知道了12個月的天數後,用d依次去減每個月份的天數,當所得結果小於等於0時,該月份就是對應的月份數,進行這次減法前的d就是該月的日數。

/*20190910

ccf試題2:日期計算

*/ #include using namespace std;

int main();

if((year%4 == 0 && year%100 != 0) || (year%400 == 0))

//計算

int month = 0;

int day;

while(days > 0)

cout 《迄今為止見過的最簡單的ccf試題2。

CSP 201509 2 日期計算

問題描述 給定乙個年份y和乙個整數d,問這一年的第d天是幾月幾日?注意閏年的2月有29天。滿足下面條件之一的是閏年 1 年份是4的整數倍,而且不是100的整數倍 2 年份是400的整數倍。輸入格式 輸入的第一行包含乙個整數y,表示年份,年份在1900到2015之間 包含1900和2015 輸入的第二...

CSP 201509 2 日期計算

問題描述 解題思路 為了方便計算,設定乙個陣列用來儲存每乙個月的天數,而把每個月和之前月份經歷的天數合併起來儲存到陣列裡可以方便比較從而更容易確定是哪乙個月。讀入年份和天數後要對是否是閏年進行判斷,然後再將讀入的天數和陣列裡面的天數進行比較,可以設定乙個迴圈,當讀入的天數小於或等於當前陣列裡面的天數...

CSP201509 2 日期計算

是由中國計算機學會 ccf 發起的 計算機職業資格認證 考試,針對計算機軟體開發 軟體測試 資訊管理等領域的專業人士進行能力認證。認證物件是從事或將要從事 it領域專業技術與技術管理人員,以及高校招考研究生的複試物件。給定乙個年份y和乙個整數d,問這一年的第d天是幾月幾日?注意閏年的2月有29天。滿...