日期類 北京理工大學機試題

2021-10-04 01:38:01 字數 889 閱讀 8353

這題我採用的方法是:

如果是一年的最後一天,則直接year++   month=1  day=1

其他情況則:

根據月份和天數計算出這是本年的第幾天,然後加一

然後根據天數計算日期。算是之前兩種方法的合併。但是比較好理解。

#include using namespace std;

#define n 100

class date

;date::date(int a, int b, int c)

date::date()

void date::adddate()

else

;int sum=0; //月中的日期累計

for(int i=1;i<=month-1;i++)

sum = sum+day+1;//實現加一

// 根據天數反向求日期

int sum_monthday = 0; //累計天數

int month_real = 0;//對應的月份

for(int i=1;i<=12;i++)

}month = month_real;

//用sum減去當月之前的所有月份天數==當月的天數

//當月之前的所有天數=累計天數-本月天數

day = sum-(sum_monthday-dayarr[month]);

}printf("%d-%02d-%02d\n", year, month, day);

}int main()

for(int i=0; i

return 0;

}

北京理工大學機試題 日期累加 C

題目描述 time limit 1000 ms memory limit 256 mb 設計乙個程式能計算乙個日期加上若干天後是什麼日期。輸入輸出格式 輸入描述 輸入第一行表示樣例個數m,接下來m行每行四個整數分別表示年月日和累加的天數。輸出描述 輸出m行,每行按yyyy mm dd的個數輸出。輸入...

北京理工大學複試上機 2020

ps 2020的是夏令營試題 1 題目 給你乙個 m n 大小的矩陣,每個點有 0,1,2 三種取值 0 代表障礙物,1代表白紙,2 代表墨滴。每一秒墨滴可以向其上下左右擴散,將四周的白紙染色,被染色之後的白紙可以繼續向四周擴散,以此類推。問經過幾秒,矩陣中所有的白紙都被染色。如果可以,則輸出擴散時...

北京理工大學複試上機 2015

1 圖形輸出 輸入 0 9 內的奇數,輸出用 組成的正方形中間掏出來乙個空的菱形。我是按照這種輸出的 9 8 include using namespace std intmain cout for int i n 2 i n i cout return0 2 有3個字母a,b,c 你輸入乙個數字,...