zoukankan      html  css  js  c++  java
  • 日期相差的天数计算201307311924.txt

    输入
    1978 10 1 1978 10 1
    1978 10 1 1978 10 2              
    1978 10 2 1978 10 1
    2001 1 1 2000 1 1
    2000 1 1 2002 1 1

    输出
    0
    1
    1
    366
    731

    #include "stdio.h"
    int main()
    {
     int b[2]={365,366};
       int a[2][13]={0,31,28,31,30,31,30,31,31,30,31,30,31,
                     0,31,29,31,30,31,30,31,31,30,31,30,31};
       int year1,month1,day1,year2,month2,day2;
       int s1,s2,i,s,t,j;
       scanf("%d%d%d%d%d%d",&year1,&month1,&day1,&year2,&month2,&day2);
       if(year1==year2)//同年份的情况
       {
        if(month1>month2)
        {t=month1;month1=month2;month2=t;}
        {t=day1;day1=day2;day2=t;}
        if(month1==month2&&day1>day2)
        {t=day1;day1=day2;day2=t;}
        s1=s2=0;
        j=(year1%400==0||(year1%4==0&&year1%100!=0));
         for(i=0;i<month1;i++)
         {
          s1=s1+a[j][i];
         }
         s1=s1+day1;
         for(i=0;i<month2;i++)
         {
          s2=s2+a[j][i];
         }
         s2=s2+day2;
         if(s1>s2)
         {t=s1;s1=s2;s2=t;}
         s=s2-s1;
       //printf("%d ",s);
       }
        if(year1>year2)//不同年份的情况
       {
       {t=year1;year1=year2;year2=t;}
       {t=month1;month1=month2;month2=t;}
       {t=day1;day1=day2;day2=t;}
       }
         if(year1<year2)
        {
         s=s1=s2=0;
         j=(year1%400==0||(year1%4==0&&year1%100!=0));
         for(i=0;i<month1;i++)
         {s1=s1+a[j][i];}
         s1=s1+day1;
         s1=b[j]-s1;
         j=(year2%400==0||(year2%4==0&&year2%100!=0));
         for(i=0;i<month2;i++)
         {s2=s2+a[j][i];}
         s2=s2+day2;
         year1+=1;
         j=(year1%400==0||(year1%4==0&&year1%100!=0));
         for(;year1<year2;)
         {
             s=s+b[j];
             year1+=1;
          j=(year1%400==0||(year1%4==0&&year1%100!=0));
         }
         s=s+s1+s2;
        }
         printf("%d ",s);
         return 0;

         

  • 相关阅读:
    003.Heartbeat MySQL双主复制
    001.常见监控简介
    微服务探索与实践—服务注册与发现
    设计模式之建造者模式
    .NET Core 3.0之深入源码理解Startup的注册及运行
    【译】.NET Core 3.0 Preview 3中关于ASP.NET Core的更新内容
    C#并发编程之异步编程(三)
    设计模式之中介者模式
    设计模式之单例模式
    设计模式之装饰器模式
  • 原文地址:https://www.cnblogs.com/xiaziteng/p/5358139.html
Copyright © 2011-2022 走看看