用C语言写我们经常需要计算一个日期后的第x天的日期,设计一个日期计算器,实现这个功能。 输入格式: 在一行中给出4个正整数,顺序对应日期的年、月、日和天数,最后一个整数是第x天。 输出格式: 在一行中输出计算后的日期,格式为xxxx年xx月xx日。
时间: 2023-04-09 16:00:47 浏览: 87
基于C语言的日期计算器的设计与实现.rar
我可以回答这个问题。以下是一个用C语言编写的计算日期的程序:
#include <stdio.h>
int main()
{
int year, month, day, x;
scanf("%d %d %d %d", &year, &month, &day, &x);
int days_in_month[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
{
days_in_month[1] = 29;
}
while (x > 0)
{
int days_in_current_month = days_in_month[month - 1];
if (day + x > days_in_current_month)
{
x -= days_in_current_month - day + 1;
day = 1;
if (month == 12)
{
month = 1;
year++;
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
{
days_in_month[1] = 29;
}
else
{
days_in_month[1] = 28;
}
}
else
{
month++;
}
}
else
{
day += x;
x = 0;
}
}
printf("%04d年%02d月%02d日", year, month, day);
return 0;
}
输入格式为:年 月 日 天数,输出格式为:xxxx年xx月xx日。
阅读全文