一,问题及代码
/*
* 文件名称:Ex2-1.cpp
* 作 者:刘祎洋
* 完成日期:2017 年 2 月 28 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:先输入一个年份,再输入一个月份
* 问题描述:输入年份和月份,输出本月有多少天
* 程序输出:输出某年某月有多少天
* 问题分析:解决该问题要考虑到闰年与非闰年二月份的不同,因此就需要先判断是否为闰年
* 算法设计:我使用了if语句来判断是否为闰年,用switch语句来判断天数
*/
#include<iostream>
using namespace std;
int main()
{
int year,month,day,flag;
cout<<"请输入年份:";
cin>>year;
cout<<"请输入月份:";
cin>>month;
if((year%4==0&&year%100!=0)||(year%400==0)) //判断是否为闰年
flag=1;
switch(month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
day=31;
cout<<"此月有"<<day<<"天"<<endl;
break;
case 4:
case 6:
case 9:
case 11:
day=30;
cout<<"此月有"<<day<<"天"<<endl;
break;
case 2:
if(flag==1)
day=29;
else day=28;
cout<<"此月有"<<day<<"天"<<endl;
break;
default:cout<<"输入错误";
}
return 0;
}
二、运行结果:
三、心得体会:
1. 解决该问题需要考虑周全,要细心些,想到闰年二月这个特殊的时间。
2.在写代码的过程中发现自己写的不熟练,比较慢,因此还需加强。
四、知识点总结:
1.使用if语句。
2.使用switch语句,一定要记得加break语句。
3.闰年的判断方法。