C語言小程式 如何判斷兩個日期之差

2022-10-04 05:00:11 字數 1699 閱讀 2404

1.普通的寫法

複製** **如下:

#include

int leapyear(int year)

int days(int *day1, int *day2)

; if(day1[0] == day2[0])

else

for(i=day2[1]+1; i   

diff += month[day2[1]] - day2[2] + day1[2];

if(day2[1] <= 2 && day1[1] >2)

if(leapyear(day2[0]))

diff++;

} }else

for(i=day2[0]+1; i  

for(i=day2[1]+1; i<=12; i++)     //day1=1992-1-1   day2=1991-1-1

diff += (month[day2[1]] - day2[2]);

if(day2[1] <= 2)

if(leapyear(day2[0]))

diff++;

for(i=1; i  

diff += day1[2];

if(day1[1] > 2)

if(leapyear(day1[0]))

diff++;

} return diff;

}int main()

2.利用結構體,**更整潔一些

複製** **如下:

#include

typedef struct date

date;

int leapyear(int year)

int compare(date *d1, date *d2)    //如果第乙個日期比第二個日期大,交換日期

else if(d1->month == d2->month)  //日期相等

}} else if(d1-> > d2->year)

return 0;

}int diff(date *date1, date *date2)

; if(date1->year == date2->year)

else

diff += month[date1->month] - date1->day + date2->day;

if(leapyear(date1->year))

if(date1->month <=2 && date2->month >2)

&nbskigruupbexp; diff++;

} }else

for(i=date1->month+1; i<=12; i++)    //date1距離年末多少天

diff += month[date1->month] - date1->day;

if(date1->month <= 2)

if(leapyear(date1->year))

diff++;

for(i=1; imonth; i++)     //date2距離年初多少天

diff += date2->day;

if(date1->month > 2)

if(leapyear(date2->year))

diff++;

} return diff;

}int main()

本文標題: c語言小程式 如何判斷兩個日期之差

本文位址:

C語言小程式(三) 判斷兩個日期之差

輸入兩個日期,計算之間相差多少天。用了兩種方法實現,第二種利用結構體,比較清晰,其餘的都一樣。1.普通的寫法 include int leapyear int year int days int day1,int day2 if day1 0 day2 0 else for i day2 1 1 i...

c 語言中如何判斷兩個型別是否相同

如果你熟悉c語言,應該知道這個問題的答案是no.在其他高階語言中這個這個要求很容易滿足,但在c語言標準中沒有提供型別判斷功能.說到這兒,這話題好像應該結束了。但是,這個問題的答案其實並不是絕對是no,雖然c語言標準中並沒有提供型別判斷的能力,但不同的c編譯器在實現時會根據需要對c語言提供擴充套件功能...

兩個彙編小程式

開發環境為emu8086!1 begin name run nian project to check if it s run nian.propmt macro ppt 定義輸出巨集 mov dx,offset ppt mov ah,09h int 21h endm stack segment d...