编写一个函数判断输入的年月日是否合法。输入例如 2012 2 12形式

来源:互联网 发布:山东11选5遗漏数据查询 编辑:程序博客网 时间:2024/05/29 17:30
/*         * Copyright (c) 2012, 烟台大学计算机学院         * All rights reserved.         * 作 者:  刘同宾       * 完成日期:2012 年 11 月 30 日         * 版 本 号:v1.0         *         * 输入描述:   * 问题描述: 编写一个函数判断输入的年月日是否合法。输入例如 2012  2  12形式* 程序输出:* 问题分析:略        * 算法设计:略         */#include<iostream>using namespace std;int main(){int days(int year,int month,int day);  //函数声明int year,month,day;cout<<"请输入年月日:"<<endl;cin>>year>>month>>day;   //输入年月日if(year>0)             //合法条件之一  年份大于0{if(month>=1&&month<=12)    //合法条件之二  月份在1到12之间{if(days(year,month,day))   //调用函数  判断 天 是否合法{cout<<"输入正确!"<<endl;   //如果合法 输出输入正确}elsecout<<"输入错误!"<<endl;  }elsecout<<"输入错误!"<<endl;}elsecout<<"输入错误!"<<endl;return 0;}//判断输入的天 是否合法!int days(int year,int month,int day){int  leap(int year);if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)  //1,3,5,7,8,10,12有31天。。{if(day>0&&day<=31){return true;}}else if(month==2||month==4||month==6||month==9||month==11)   //4,6,9,11有30天{if(day>0&&day<=30){return true;}}else          //2 若是闰年有29天  不是闰年有28天{if(leap(year))   //调用函数  判断是否是闰年{if(day>0&&day<=29)  {return true;}}else{if(day>0&&day<=28)   {return true;}}}}//判断是否为闰年!int  leap(int year){if((year%4==0&&year%400==0)||(year&4==0&&year%100!=0))  //判断是否是闰年的条件{return true; }elsereturn false;}

原创粉丝点击