c语言sample等价错误,c语言 新手 请问我的代码哪里错了,运行正确,提交就是不对...

Description

华神敲着敲着代码突然断网了,无所事事,闲的蛋疼,没办法他打开时间表数时间玩,

然后突然之间发现了自己一个神奇的技能,他可以在很短的时间内算出两个日期之间的间隔时间,

他自己觉得很吊,然后向你发出挑战,现在以单组样例的形式给出两个时间,要求输出这两个时间的间隔的天数,

时间格式yyyy:mm:dd,分别为年月日;

Input

Output

Sample Input

1900:01:01

2038:12:31

Sample Output

50768

#include

int year_(int year)

{

if(year%4==0&&year%100!=0||year%400==0)

return 366;

else return 365;

}

int year_sumday(int year,int month)

{

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

int run[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};

int i,flag=0,sum=0;

if((year%4==0&&year%100!=0)||year%400==0)

flag=1;

else

flag=0;

for(i=0;i<=month-1;i++)

{

if(flag==1)  sum +=run[i];

else  sum +=ping[i];

}

return sum;

}

int day_cha(int year,int month,int day)

{

int i=0,day1=0;

while(i<=year)

{

day1 +=year_(i);

i++;

}

int day2=year_sumday(year,month);

return day1+day2+day;

}

int main()

{

int a,b,c;

int i,j,k;

scanf("%d:%d:%d",&a,&b,&c);

scanf("%d:%d:%d",&i,&j,&k);

int dday1=day_cha(a,b,c);

int dday2=day_cha(i,j,k);

int cha=0;

if(dday1>=dday2)

cha=dday1-dday2;

else

cha=dday2-dday1;

printf("%d",cha);

return 0;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值