问题遇到的现象和发生背景
一年中的第几天
试题描述
给定一个具体的日期,请输出,这一天是当年的第几天?
输入
输入格式如下:
year-month-day
如:
1999-9-9
代表1999年9月9日。
输出
输出一个整数,代表这一天为那一年的第多少天。
输入示例
2000-1-31
输出示例
31
数据范围
输入为合法的日期
问题相关代码,请勿粘贴截图
#include<stdio.h>
#include<stdlib.h>
int is_leap_year(int year)
{
(这一行正文内容不能输入,故删去)
{
return 1;
}
else
{
return 0;
}
}
int com(int year, int month, int day)
{
int mon_day[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
int ret = is_leap_year(year);
int mon = 0;
int i = 0;
if (ret)
{
mon_day[1] = 29;
}
for (i = 0; i < month - 1; i++)
mon += mon_day[i];
}
return mon + day;
}
int main()
{
int year = 0;
int month = 0;
int day = 0;
int num = 0;
scanf("%d*3", &year, &month, &day); (这里三个%d也不能输?好吧)
printf("%d", com(year, month, day));
system("pause");
return 0;
}
一直在报错
有没有更好的解决办法?