国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C語言實現計算兩個日期相隔天數

2019-11-08 02:36:06
字體:
來源:轉載
供稿:網友

用C語言實現計算日期相關的問題一直是各個學校考研復試中重點問題,今天帶大家實現一個小例子:給定兩個日期,計算相隔的天數 輸入:輸入兩組日期數據,格式為:xxxx xx xx(分別為年、月、日),計算相隔天數 示例:請輸入第一個日期:2012 3 4 請輸入第二個日期:2012 3 6 相隔天數為2 代碼:

#define _CRT_SECURE_NO_WARNINGS //我用的是vs2013,使用scanf函 //數需要關閉安全檢查,以后同理,不再贅述 #include<stdio.h>#include<stdlib.h>typedef struct DATE{ int year; int month; int day;}DATE; //定義日期結構體int isEqual (DATE date1, DATE date2); //判斷兩個日期是否相等int isrunyear (int year); //判斷是否為閏年int month_day (int month, int year); //計算每月的天數int riqicha (DATE date1, DATE date2); //計算日期差int main (){ DATE date1, date2; PRintf ("請輸入第一個日期:"); scanf ("%d%d%d", &date1.year, &date1.month, &date1.day); printf ("/n"); printf ("請輸入第二個日期:"); scanf ("%d%d%d", &date2.year, &date2.month, &date2.day); printf ("/n"); //請輸入第一個日期 //請輸入第二個日期 //日期格式為:xxxx xx xx printf ("日期差為:%d", riqicha (date1, date2)); system ("pause"); //等待一下,如不加這句話程序完成之后會自動退 //出, 以后不再贅述 return 0;}int isEqual (DATE date1, DATE date2){ if (date1.year == date2.year&&date1.month == date2.month&&date1.day == date2.day) return 1; else return 0;}int isrunyear (int year){ if (year % 400 == 0 || year % 4 == 0 && year % 100 != 0) /*判斷一年是否為閏年的條件:是4的整數倍,不能是100的整數倍,可以是400的整數倍*/ return 1; else return 0;}int month_day (int month, int year){ switch (month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: return 31; case 4: case 6: case 9: case 11: return 30; case 2: return isrunyear (year) ? 29 : 28; default: return -1; }}int riqicha (DATE date1, DATE date2){/*核心代碼,請注意領悟思想,很多同學第一次看見本題時第一想法是先計算兩個日期相隔多少年,再算月數,再將每月天數相加,再加多出來的日數,這種思想沒有錯誤,但人類思考的工作太大,程序員都是懶惰的,盡量將工作交給計算機來做,本算法思想為:設置一個相隔天數num,初始為0,第一個日期沒往后推一天,num自身加一,等到第一個日期和第二個日期相等時,num即為相隔天數*/ int num = 0; while (!isEqual (date1, date2)) { if (date1.day != month_day (date1.month, date1.year)) { date1.day++; } else { if (date1.month != 12) { date1.month++; date1.day = 1; } else { date1.year++; date1.month = 1; date1.day = 1; } } num++; } return num;}

歡迎關注微信公眾號:C語言二偉 這里寫圖片描述


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 海城市| 宁海县| 沙坪坝区| 和平区| 鄂伦春自治旗| 宜章县| 襄樊市| 汾阳市| 开阳县| 寿阳县| 额尔古纳市| 蓝山县| 太康县| 连城县| 资溪县| 叙永县| 武宁县| 白玉县| 无为县| 沙河市| 仙桃市| 江城| 周宁县| 通榆县| 元阳县| 桃园县| 哈尔滨市| 丰顺县| 旌德县| 通河县| 祁门县| 永登县| 萨迦县| 琼海市| 公安县| 清原| 罗田县| 剑河县| 洪江市| 成武县| 西和县|