c语言(根据今天的日期推算明天的日期)

c语言(根据今天的日期推算明天的日期),第1张

不用else?

这程序要多麻烦啊

#include

<stdio.h>

void

main()

{

int

y,m,d

int

x[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}

printf("输入年

日,用空格分开笑乱配:")

scanf("%d%d%d",&y,&m,&d)

if(y%4==0&&y%100!=0||y%400==0)x[2]=29//闰年

if(m<1||m>12)

{printf("月份错误\n")return}

if(d<1||d>x[m]){printf("日期错碰指误\n")return}

if(m==12&&d==31){y++m=1d=1}

//12月31日

if(d==x[m]&&!(m==12&&d==31))m++,d=1

//某月最后一天,但不是12月31日陪基

if(d!=x[m]&&!(m==12&&d==31))

d++

//不是某月最后一天,也不是12月31日

printf("下一天是%d年%d月%d日\n",y,m,d)

}

#include"stdio.h"

#include"stdlib.h"

intmain()

{

intday,month,year,sum,leap

printf("\npleaseinputyear,month,day\n")

scanf("%d,%d,%d",&year,&month,&day)

switch(month)/*先计算某月以前月份的总天数*/

{

case1:sum=0break

case2:sum=31break

case3:sum=59break

case4:sum=90break

case5:sum=120break

case6:sum=151break

case7:sum=181break

case8:sum=212break

case9:sum=243break

case10:sum=273break

case11:sum=304break

case12:sum=334break

default:printf("dataerror\n")break

}

sum=sum+day/*再加上某天的天数*/

if(year%400==0||(year%4==0&&year%100!=0))/*判断是不是闰年*/

{

leap=1

}

else

{

leap=0

}

if(leap==1&&month>2)/*如果是闰年且月份大于2,总天数应该加一天*/

{

sum++

}

printf("Itisthe%dthday.\n",sum)

return0

}

扩展资料

C语言输晌档入任意一个日期的年、月、日宴改乱的值,求出是星期几并输出。

#include<stdio.h>

voidmain()

{

inty,m,d,c,s,w

printf("请输入8位年月日,以空格隔开:")

scanf("%d%d%d",&y,&m,&d)

if(m==1)c=d

elseif(m==2)c=31+d

elseif(m==3)c=31+28+d

elseif(m==4)c=31+28+31+d

elseif(m==5)c=31+28+31+30+d

elseif(m==6)c=31+28+31+30+31+d

elseif(m==7)c=31+28+31+30+31+30+d

elseif(m==8)c=31+28+31+30+31+30+31+d

elseif(m==9)c=31+28+31+30+31+30+31+31+d

elseif(m==10)c=31+28+31+30+31+30+31+31+30+d

elseif(m==11)c=31+28+31+30+31+30+31+31+30+31+d

elseif(m==12)c=31+28+31+30+31+30+31+31+30+31+30+d

if(m>2)

{if(y%100==0){if(y%400==0)c=c+1}

elseif(y%4==0)c=c+1}

s=(y-1)*365+(y-1)/4-(y-1)/100+(y-1)/400+c

w=s%7

switch(w)

{

case0:printf("星期日")break

case1:printf("星期一")break

case2:printf("星期二")break

case3:printf("星期三")break

case4:printf("星期四")break

case5:printf("星期五歼芦")break

case6:printf("星期六")break

printf("\n")

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12477265.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存