文章

6

粉丝

56

获赞

0

访问

1.3k

头像
日期计算 题解:按教材上敲的怎么通过只有百分之五十
P1051 中南大学机试题
发布于2024年3月16日 17:56
阅读数 322

#include<stdio.h>
struct node {
    int year;
    int month;
    int day;
}p;
int f[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31};
int main(){
    
    while(scanf("%d %d %d",&p.year,&p.month,&p.day) !=EOF){
    //判断是否为润年能被400整除,或者能被4整除但不能被100整除的都是闰年,    
        if((p.year%400 == 0)|| (p.year%4==0)&&(p.year%100!=0)) 
        {
            f[2]=29;
        } 
         else f[2]= 28;
         int flag = 0;
         if(p.month < 1 || p.month > 12) flag = 1;//判断月份是否合法
         
         for (int i=1;i<=12;i++){//判断天数是否合法 ...

登录查看完整内容


登录后发布评论

3 条评论
wyw_exs
2024年3月18日 19:08

闰年的判断条件没有问题,你要把全局的f[13]数组放到while循环里面,不然的话只要一堆输入里面有一个闰年你把数组修改之后,后面的所有输入都用的是29这个数

赞(1)

八千 : 回复 wyw_exs: 是的,把判断是否闰年封装成函数调用,数组放到main函数里面

2024年3月18日 20:48
snake
2024年3月16日 19:00

闰年的天数合法判断有问题

赞(0)