4.日期计算
题目描述:
给定一个年份y和一个整数d,问这一年的第d天是几月几日? ??
注意闰年的2月有29天,且满足下面条件之一的是闰年: ??
1) 年份是4的整数倍,而且不是100的整数倍;
2) 年份是400的整数倍
输入描述:
输入包含两个整数y和d,y表示年份,年份在1900到2025之间(包含1900和2025)。
d表示这一年的第几天,d在1至365之间。
输出描述:
在一行输出两个整数,分别表示答案的月份和日期,以空格分隔。
输入样例:
2015 80
输出样例:
3 21
?
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int arr[13] = { 31 , 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
int main()
{
int year = 0;
int day = 0;
scanf("%d %d", &year, &day);
int month = 0;
int date = 0;
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))
{
arr[1]++;
}
while (day > 0)
{
int tmp = day;
day -= arr[month];
if (tmp <= arr[month] && tmp > 0)
{
date = tmp;
}
month++;
}
printf("%d %d", month, date);
return 0;
}