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...