努力学C的啦 2023-10-20 12:14 采纳率: 56.5%
浏览 4

c语言PTA计算距离元旦日子,今天在PTA,这也算错吗,那应该怎么写

今天在PTA,这也算错吗,那应该怎么写

img

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>

//判断瑞年
int SpecialYear(int year) {
    if ((year % 4 == 0 && year % 100 != 0 )|| year % 400 == 0) {//判断瑞年
        return 1;
    }
    else {
        return 0;
    }
}

//计算天数
void SumArrDays(int year, int moon, int day) {
    int sumDays = 0;
    if (moon < 1 || moon>12 || day < 1 || day>31) {
        printf("ErrorInput\n");
    }
    else {
        for (int j = 1; j < moon; j++) {
            if (j == 4 || j == 6 || j == 9 || j == 11) {
                sumDays += 30;
            }
            else if (j == 1 || j == 3 || j == 5 || j == 7 || j == 8 || j == 10 || j == 12) {
                sumDays += 31;
            }
            else if (j == 2 && SpecialYear(year)) {
                sumDays += 29;
            }
            else {
                sumDays += 28;
            }
        }
        sumDays += day;
        printf("Totaldays= %d\n", sumDays);
    }

}
int main() {
    int n=0;//输入多少行的行数
    scanf("%d", &n);
    while ( n--) {
        int year, moon, day;
        scanf("%d %d %d", &year, &moon, &day);//输入年月日
        
        SumArrDays(year, moon, day);
    }
    return 0;
}

PTA测试

img

本地测试

img

  • 写回答

3条回答 默认 最新

  • 我诺 2023-10-20 12:17
    关注

    没看太懂你的提问是什么意思

    评论

报告相同问题?

问题事件

  • 创建了问题 10月20日

悬赏问题

  • ¥300 寻抓云闪付tn组成网页付款链接
  • ¥15 请问Ubuntu要怎么安装chrome呀?
  • ¥15 视频编码 十六进制问题
  • ¥15 Xsheii7我安装这个文件的时候跳出来另一个文件已锁定文件的无一部分进程无法访问。这个该怎么解决
  • ¥15 unity terrain打包后地形错位,跟建筑不在同一个位置,怎么办
  • ¥15 FileNotFoundError 解决方案
  • ¥15 uniapp实现如下图的图表功能
  • ¥15 u-subsection如何修改相邻两个节点样式
  • ¥30 vs2010开发 WFP(windows filtering platform)
  • ¥15 服务端控制goose报文控制块的发布问题