一.摘要
- 閏年的判斷只需要記住一個口訣:“四年一閏,百年不閏,四百年再閏”,意思是“能被4整除且不能為100整除的年份”是閏年,“能被400整除的年份”也是閏年;
- 日期計算(計算某一日期是一年中的第幾天),先判斷是閏年還是非閏年,再求該日期是一年中的第幾天,具體做法是建立個結構體或數組。
二.示例代碼(C++描述)
1 /*閏年判斷與日期計算*/ 2 #include<iostream> 3 #include<string> 4 #include<iomanip> 5 using namespace std; 6 struct { 7 int date[12] = { 31,29,31,30,31,30,31,31,30,31,30,31 }; 8 }run;//閏年 9 struct { 10 int date[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 }; 11 }nrun;//非閏年 12 13 int main() { 14 int ye, mo, day; 15 cin >> ye >> mo >> day; 16 int sum = 0; 17 if (ye % 4 == 0 && ye % 100 != 0 || ye % 400==0) {//閏年 18 for (int i = 0; i < mo-1; i++) {//計算到前一個月 19 sum += run.date[i]; 20 } 21 } 22 else { 23 for (int i = 0; i < mo-1; i++) { 24 sum += nrun.date[i]; 25 } 26 } 27 sum += day;//加上日 28 cout << ye << "年" << mo << "月" << day << "日 是一年中的第" << sum << "天" << endl; 29 system("pause"); 30 return 0; 31 }
三.運行結果
四.總結
這應該是最簡便的方法了,其他方法的相對繁瑣~