思路:求日期相差天數的話,就讓少的那個一直加一天 加到多的那個天數為止。
具體處理:天數d加了一天後超過當前月m應有的天數時,令月份m+1;別忘了置天數為1號。
月份m變成13時,令年份y加1 同時設定月份m為1月。
***閏年和平年的二月份天數不一樣,所以要用二維陣列存一下每個月的天數***、
設定二維陣列int month 第二維為0時表示平年,為1時表示閏年(這個二維陣列可以設定在main方法前)
直接把第乙個日期的年份不斷加1,加到第二個日期的年份-1為止(-1是為了防止加過了),根據平年,閏年來累加是365天,366天。(啊 判斷閏年也好多判斷啊(╥╯^╰╥))**把判斷閏年的方法單獨寫乙個方法,引用即可。
判斷閏年的條件:能整除4且不能整除一百或 能整除400 (year%4==0&&year%100!=0)||(year%400==0)
#include int month[13][2] = ,,,,,,,,
,,,,
};//這裡陣列的第一行要和月份對齊 是一月
bool isleap(int year)
int main()
y1 = t1/10000;
y2 = t2/10000;
m1 = t1%10000/100;
m2 = t2%10000/100;
d1 = t1%100;
d2 = t2%100;
int ans =1;
while((y2>y1)||(m2>m1)||(d2>d1))
if(m1==13)
ans++;
}printf("%d\n",ans);
return 0;
}
這個題 我寫了一天吶,細節太多。。嚶 codeup 1928 日期差值
時間限制 1 sec 記憶體限制 32 mb 獻花 1446 解決 395 獻花 花圈 tk題庫 有兩個日期,求兩個日期之間的天數,如果兩個日期是連續的我們規定他們之間的天數為兩天。有多組資料,每組資料有兩行,分別表示兩個日期,形式為yyyymmdd 每組資料輸出一行,即日期差值 20130101 ...
codeup 1928 日期差值
有兩個日期,求兩個日期之間的天數,如果兩個日期是連續的我們規定他們之間的天數為兩天。有多組資料,每組資料有兩行,分別表示兩個日期,形式為yyyymmdd 每組資料輸出一行,即日期差值 20130101 201301055 includebool isleap int year int main 確定...
Codeup 1928 日期差值
題目 有兩個日期,求兩個日期之間的天數,如果兩個日期是連續的我們規定他們之間的天數為兩天。有多組資料,每組資料有兩行,分別表示兩個日期,形式為yyyymmdd 每組資料輸出一行,即日期差值 20130101 201301055 include includeusing namespace std b...