洲900 2022-11-15 13:07 采纳率: 95.8%
浏览 27
已结题

为啥闰年时的数值不变


#include<stdio.h>
int leap(int a)
{
   
    if(a%400==0||a%4==0&&a%100!=0)
    {
    a=1;
    return a;
    }  
    else
    {
    a=0;
    return a;}
}
int sumday(int a,int b,int c)
{   int d,e,f;
    d=b-1; 
    a=leap(a);
    switch(d)
    {
    case 0:e=0;break;
    case 1:e=31;break;
    case 2:e=59;break;
    case 3:e=90;break;
    case 4:e=120;break;
    case 5:e=151;break;
    case 6:e=181;break;
    case 7:e=212;break;
    case 8:e=243;break;
    case 9:e=273;break;
    case 10:e=304;break;
    case 11:e=334;break;
}
    if(a==1&&d>2)
    f=a+e+c;
    else
    f=e+c;
    return f;
}
int main()
{
    int a,b,c;
    printf("请输入年月日");
    scanf("%d %d %d",&a,&b,&c);
    printf("计算该日是该年的第%d天",sumday(a,b,c));
    return 0;
}为什么这个代码敲出来闰年和不润年数值一样
  • 写回答

5条回答 默认 最新

  • CSDN专家-link 2022-11-15 13:25
    关注

    年月日你怎么输入的呢?贴图看看

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 12月28日
  • 已采纳回答 12月20日
  • 修改了问题 11月15日
  • 创建了问题 11月15日