zoukankan      html  css  js  c++  java
  • 日历问题

    /*在我们现在使用的日历中, 闰年被定义为能被4整除的年份,但是能被100整除而不能被400整除的年是例外,它们不是闰年。
    例如:1700, 1800, 1900 和 2100 不是闰年,而 1600, 2000 和 2400是闰年。
    给定公元2000年1月1日后的某年某月某日(包括2000年1月1日),你的任务:
    (1)给出这一天从公元2000年1月1日开始逝去的天数,(2)判断这一天是当年的第几天。*/
    #include<stdio.h>
    int judgeyear(int a);
    int main()
    {
    int b=365;
    int c=366;
    int year,month,day;
    int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};计算月的天数,自己想出来的这个方法,感觉还可以,
    int i,s=0;
    int m=0;
    scanf("%d%d%d",&year,&month,&day);
    for(i=2000;i<year;i++)
    {
    if(judgeyear(i))
    s+=b;
    else
    s+=c;
    }//计算年的天数
    for(i=0;i<month;i++)
    {
    if(judgeyear(i))
    {
    s+=a[i];
    m+=a[i];
    }
    else
    {
    a[2]=29;
    s+=a[i];
    m+=a[i];
    }
    }
    s+=day;
    m+=day;
    printf("%d %d",s,m);
    return 0;
    }
    int judgeyear(int a)
    {
    int n=1;
    if(a%4==0&&a%100!=0)
    n=0;
    return n;
    }

    程序还有一点小问题,例如输入2000 1 1 输出是1 1 应该是0 1 才对,求大神指点啊

  • 相关阅读:
    驾照暂时不用年审,放心了
    痛筋
    摘枣
    当了一回山村教师
    补贴山村学校照片
    心中无敌,无敌于天下
    山路
    学会珍惜
    写给部分美女们
    不打羽毛球好多年
  • 原文地址:https://www.cnblogs.com/yfz1552800131/p/5252308.html
Copyright © 2011-2022 走看看