文章

25

粉丝

364

获赞

58

访问

226.7k

头像
日期累加(C)
P1446 北京理工大学机试题
发布于2021年1月17日 15:50
阅读数 7.6k

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

typedef struct
{
    int year, month, day;
} Date;
int days[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};

int main()
{
    int m, sum;
    Date d;

    scanf("%d", &m);
    for (int i = 0; i < m; i++)
    {
        scanf("%d%d%d%d", &d.year, &d.month, &d.day, &sum);
        sum += d.day;
        d.day = 0;

        if ((d.year % 400 == 0) || (d.year % 100 != 0 && d.year % 4 == 0))//计算闰年
        {
            days[2] = 29;
        }
        else
        {
            days[2] = 28;
        }
        while (sum > days[d.month])//月数累加
        {
            sum -= days[d.month++];
            if (d.month > 12)
            {
                d.month = 1;
                d.year++;
                if ((d.year % 400 == 0) || (d.year % 100 != 0 && d.year % 4 == 0))
                {
                    days[2] = 29;
 ...
登录查看完整内容


登录后发布评论

暂无评论,来抢沙发