m0_61570995 2021-10-31 19:40 采纳率: 100%
浏览 155
已结题

要求编写程序计算某年某月某日是该年中的第几天。 这个哪儿有问题求解


#include<stdio.h>
int main()
{
    int year,month,day,i,outday=0;
    scanf("%d/%d/%d",&year,&month,&day);
    for (i=1;i<=month;i++)
        {
            if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)//闰年
            {
                switch (i)
                {
                    case 4:
                    case 6:
                    case 9:
                    case 11:
                        month=30;
                        break;
                    case 2:
                        month=29;
                        break;
                    default:
                        month=31;
                        break;
                }
            outday+=month;
             } 
             else if (year%400!=0)//平年
             {
                   switch (i)
                {
                    case 4:
                    case 6:
                    case 9:
                    case 11:
                        month=30;
                        break;
                    case 2:
                        month=28;
                        break;
                    default:
                        month=31;
                        break;
                }
            outday+=month; 
            } 
        }
    printf("%d",outday);
    return 0;
 }
  • 写回答

1条回答 默认 最新

  • CSDN专家-link 2021-10-31 19:40
    关注

    你输入年月日的时候输入斜杠了吗?
    for (i=1;i<=month;i++)
    改为
    for (i=1;i<month;i++)
    i不能等于month啊。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月8日
  • 已采纳回答 10月31日
  • 创建了问题 10月31日