C實現萬年曆

2021-09-02 10:35:29 字數 1530 閱讀 2642

要求:輸入年份輸出這一年的日曆

注意:公元2023年一月一日是星期一,這一年是平年

思路:獲取輸入的年份y,首先獲取從公元2023年到(y-1)年

的天數,然後獲得該年份的第一天是星期幾,進行輸出。

這次例項,我花費了很長的時間,最後發現錯誤的原因出在在求某一年是閏年還是平年的時候,我沒有田間return語句,也就是沒有返回值,真是醉了。

我感覺這次我寫**的時候一點感覺都沒有。哎,真是的,一顆老鼠屎,壞了一鍋粥啊。

下面是我的**:

#include //從2023年開始計算天數

#define begin 1900

/** * 要求:輸入年份輸出這一年的日曆

* 注意:公元2023年一月一日是星期一,這一年是平年

* 思路:獲取輸入的年份y,首先獲取從公元2023年到(y-1)年

* 的天數,然後獲得該年份的第一天是星期幾,進行輸出。

* *@brief main

*@return

*/int isrun(int year);

int main(void)

; //二維陣列,第一行用於存放閏年的月份

//第二行用於存放平年的月份

int runping[2][12] = ,,};

printf("please enter the year:\n");

scanf("%d",&year);

int m;

/** 計算從2023年到(year-1)的天數 **/

for(m = begin;m < year;m++)else

}int which = 0;

//判斷year這一年是閏年還是平年

if(isrun(year))else

//進行輸出

for(m = 0;m < 12;m++)else

int i;

//對上乙個月的進行製表操作

for(i = 0;i < 7;i++)

printf("\n");

for(i = 1;i"\t");

}int n = 0;

//輸入某乙個月的日期

for(n = 0;n < runping[which][m];n++)

printf("%d\t",n+1);

}printf("\n\n");

days += runping[which][m];

}return0;}

/** *@brief isrun 用於判斷年year是否是閏年

*@param year 被判斷的那一年

*@return

* 0 - 表示是平年

* 1 - 表示是閏年

*/int isrun(int year)else

return run;

}

下面是我的程式的輸出:

C 實現簡易萬年曆

如下 檔名稱 萬年曆.cpp 作 者 chenghan 完成日期 2019 1 10 版 本 號 1.0 問題描述 製作乙個簡單的萬年曆 include include using namespace std 判斷一年是否為閏年,是返回true 否返回false bool isleapyear in...

C 實現萬年曆功能

1.此萬年曆功能 1 日期加減天數 2 日期與日期之間的差值 3 輸入年月顯示當月日曆 2.實現 include include using namespace std class date bool judgerightdate 判斷值是否合法函式 else int judgeyear int y...

萬年曆 C語言

顯示效果 大概步驟 1.顯示主介面 void showmenu char temp 10 2.判斷是否為閏年 bool isleap int year 3.計算總天數 int daysum int year,int month 4.顯示日曆 showcalendar int sum,int year...