當前位置:編程學習大全網 - 編程語言 - 日期差分程序設計

日期差分程序設計

程序1

Intsum (int year,int month,int day)/*計算壹年中的某壹天*/

{ int day_sum=0,I;

int day_tab[13]={0,31,28,31,30,31,30,31,30,31,30,31;

for(I = 1;我& lt月份;i++)

day _ sum+= day _ tab[I];

day _ sum+=日;

if((year % 4 = = 0 & amp;& amp年份%100!=0) ||(年份%400==0))

if(month & gt;2)day _ sum+= 1;/*-閏年的二月比正常年份多壹天-*/

返回day _ sum

}

Int days(int y2,int m2,int d2) /*計算日期差*/

{ int flag,I;

int day_sub,year _ sub

int y1=2006,m1=4,d 1 = 25;

/*計算兩年之間的天數*/

year _ sub = y2-y 1;

year _ sub * = 365/*先平均年處理*/

for(I = y 1;我& lty2;I++) /*重新處理閏年:如果兩年之間有幾個閏年,需要加幾天*/

if((I % 4 = = 0 & amp;& amp我%100!=0) || i%400==0)

year _ su b++;

/*計算兩個日期之間的總天數*/

day_sub=sum(y2,m2,d2)-sum(y1,m1,d 1)+year _ sub;

return(day _ sub % 7+7)% 7;/*加7用於處理負數*/

}

主()

{

int年、月、日;

printf(" \ n請輸入今天的日期(年、月、日):\ n ");

scanf("%d,%d,%d ",& amp年份& amp月份& amp天);

printf(" \ n day is ");

Switch(days(year,month,day)) /*根據日期差的余數判斷星期幾*/

{案例0:printf("星期二!");打破;

案例1:printf("星期三!");打破;

案例二:printf("星期四!");打破;

案例三:printf("星期五!");打破;

案例四:printf("星期六!");打破;

案例五:printf("Sunday!");打破;

案例六:printf("星期壹!");打破;

}

getche();}

來源:/question/28951745.html?fr=qrl

程序2

結構日期{

int年;

int月;

int日;

}日期;

char monthday[]={31,28,31,30,31,30,31,30,31,30,31 };

int計數()

{

int I = 0;

int d;

int yy

d = 0;

yy =日期.年份;

for(I = 1;我& lt日期.月份;i++)

d+= month day[I-1];

d+= date . day;

if(((YY % 4 = = 0 & amp;& ampyy%100!= 0)| | YY % 400 = = 0)& amp;& ampdate.month & gt2)d++;

返回d;

}

int main()

{

int N;

printf("輸入日期(年-月-日):");

scanf("%d-%d-%d ",& amp日期、年份和時間。日期、月份和時間。date . day);

printf("%d ",Count());

getchar();

getchar();

getchar();

}

來源:/question/28950377.html

  • 上一篇:騰訊老員工創業有哪些
  • 下一篇:祿勸西點實驗中學是私立學校嗎
  • copyright 2024編程學習大全網