一、问题及代码
/* 文件名称:three.cpp
* 作 者:吴涛涛
* 完成日期:2017 年 3月 5 日
* 版 本 号:v1.0
* 对任务及求解方法的描述部分:
* 输入描述:年份和月份用空格隔开
* 问题描述:
项目2:本月有几天?
自选if语句的嵌套或/和switch语句完成程序设计
编程序,输入年份和月份,输出本月有多少天。合理选择分支语句完成设计任务。
样例输入1:2004 2
输出结果1:本月29天
样例输入2:2010 4
输出结果2:本月30
* 程序输出:
* 问题分析:略
* 算法设计:略
*/
#include<iostream>
using namespace std;
int main()
{
int year,month,;
cout<<"请输入年份和月份用空格隔开:";
cin>>year;
cin>>month;
if((year%4==0&&year%100!=0)||year%400==0)
{
if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)
cout<<"本月有31天"<<endl;
else if(month==4||month==6||month==9||month==11)
cout<<"本月有30天"<<endl;
else if(month==2)
cout<<"本月有29天"<<endl;
}
else
{
if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)
cout<<"本月有31天"<<endl;
else if(month==4||month==6||month==9||month==11)
cout<<"本月有30天"<<endl;
else if(month==2)
cout<<"本月有28天"<<endl;
}
return 0;
}
二、运行结果
三、心得体会
程序并不很好,感觉不够简洁,应该和switch语句一起使用,效果会更好
闰年判断的那一开始总是错,原来是有一个等于号的双等于漏了一个总是报错,看了好久才找出来,这种错误一定不能犯不然很难找出来
程序漏了一个报错
四、知识点总结
在赋值号左边不能是表达式,只能是变量
等于是两个等号
闰年判断是能被4整除并且不能被100整除或者能被400整除