2. 编写一个程序,用户输入年份及月份两个数据,程序输出该月份的天数。(提示:对2月要考虑是否闰年,闰年年份要么能被4整除且不能被100整除,要么能被400整除,除次之外都不是闰年)。
// problem2.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include
using namespace std;
void main()
{
int a=0,b=0;//a记录年,b记录月
cout<<"请输入年:"<<endl;
cin>>a;
if(a<0)
{
cout<<"年份不能小于0,重新输入"<<endl;
cin>>a;
}
cout<<"请输入月:"<<endl;
cin>>b;//
switch(b)
{
case 1:
cout<<31<<endl;
break;
case 3:
cout<<31<<endl;
break;
case 4:
cout<<30<<endl;
break;
case 5:
cout<<31<<endl;
break;
case 6:
cout<<30<<endl;
case 7:
cout<<31<<endl;
break;
case 8:
cout<<31<<endl;
break;
case 9:
cout<<31<<endl;
break;
case 10:
cout<<31<<endl;
break;
case 11:
cout<<31<<endl;
break;
case 12:
cout<<31<<endl;
break;
case 2://对2月份特殊处理,闰年年份要么能被4整除且不能被100整除,要么能被400整除,除次之外都不是闰年
{
if((0==a%4)&&(a0!=0))//能被4整除且不能被100整除
{
cout<<29<<endl;
break;
}
else if(a@0==0)//能被400整除
{
cout<<"29"<<endl;
break;
}
else
cout<<"28"<<endl;
break;
}
default:
cout<<"请输入有效的月份:"<<endl;
}
}
以上程序在vs2010环境下运行通过,在vc下应该也可以运行。欢迎批评指正。