第17周專案4 相差多少天
阿新 • • 發佈:2019-01-30
/* *Copyright (c)2014,煙臺大學計算機與控制工程學院 *All rights reserved. *檔名稱:tr.cpp *作 者 張偉建 *完成日期:2014年12月22日 *版 本 號:v1.0 * *問題描述: 兩個日期相差多少天 *輸入描述: 輸入兩個日期 *輸出描述: 天數 */ #include <iostream> using namespace std; int da(int y ,int m, int d); struct Date { int year; int month; int day; }; int main() { Date date1,date2; int dw; cout<<"input year,month,day:"; cin>>date1.year>>date1.month>>date1.day; cin>>date2.year>>date2.month>>date2.day; dw=da(date1.year,date1.month,date1.day)-da(date2.year,date2.month,date2.day); if(dw>0) cout<<dw; else cout<<-dw; return 0; } int da(int y ,int m ,int d) { int sum=d; //計算days; for(int i=1; i<m; i++) { switch(i) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: d=31; break; case 4: case 6: case 9: case 11: d=30; break; case 2: d=28; break; } sum+=d; } while(y>1900) { if((y%4==0&&y%100!=0)||y%400==0) { sum=sum+366; } else { sum=sum+365; } y--; } return sum; }