问题标题: 酷町堂:1325

0
0
已解决
李牧晓
李牧晓
中级天翼
中级天翼

题目描述 Description

输入年月,输出该月有多少天。如果输入格式不对,输出Error!

输入描述 Input Description

输入一行,两个整数,第一个为年份,第二个为月份。

输出描述 Output Description

输出天数。

样例输入 Sample Input

【样例输入一】 2017 3 【样例输入二】 2017 13

样例输出 Sample Output

【样例输出一】 31 【样例输出二】 Error!

数据范围及提示 Data Size & Hint

闰年2月有29天,能被4整除且不能被100整除的为闰年,能被400整除的是闰年。

#include<iostream>

#include<cstdio>

#include<cmath>

#include<string>

using namespace std;

long long sum;

int main()

{

    int a,b;

    cin>>a>>b;

    if(b>12||b<=0){

        cout<<"Error!";

    }

    else{

        if(b==2){

if(a==2000){

cout<<29;

}

            else if(a%4==0&&a%100!=0||a%400==0){

                cout<<29;

            }

else{

cout<<28;

}

        }

        else{

            if(b<=6){

                if(b%2!=0){

                    cout<<31;

                }

                else{

                    cout<<30;

                }

            }

            else{

                if(a%2==0){

                    cout<<31;

                }

                else{

                    cout<<30;

                }

            }

        }

    }

return 0;

}

 

哪错了?


0
已采纳
张展嘉
张展嘉
新手天翼
新手天翼
    int b,a;
    cin>>b>>a;
    if(a>12||b<=0){
        cout<<"Error!";
    }else if((b%4==0&&b%100!=0||b%400==0)&&a==2){
        cout<<"29";
    }else {
    if(a==1||a==3||a==5||a==7||a==8||a==10||a==12){
        cout<<"31";
    }else if(a==4||a==6||a==9||a==11){
        cout<<"30";
    }
    }
    if((b%4!=0&&b%100==0||b%400!=0)&&a==2){
        cout<<"28";
    }

 

0
我要回答