C++:编写函数求某年某月某日(**** ** **)是这一年的第几天
编写函数求某年某月某日(********)是这一年的第几天提示:要考虑闰年,闰年的2月是29天闰年的条件:4的倍数但不是100的倍数400的倍数编写主函数,输入年月日,测...
编写函数求某年某月某日(**** ** **)是这一年的第几天
提示:要考虑闰年,闰年的2月是29天
闰年的条件:
4的倍数但不是100的倍数
400的倍数
编写主函数,输入年月日,测试该函数并输出结果。 展开
提示:要考虑闰年,闰年的2月是29天
闰年的条件:
4的倍数但不是100的倍数
400的倍数
编写主函数,输入年月日,测试该函数并输出结果。 展开
1个回答
展开全部
#include<iostream>
using namespace std;
class days
{
int year,month,day;
public:
days(int year1,int month1,int day1)
{
year=year1;
month=month1;
day=day1;
}
int leap()
{
switch(month)
{
case 1:return 0;
case 2:return 31;
case 3:return 59;
case 4:return 90;
case 5:return 120;
case 6:return 151;
case 7:return 181;
case 8:return 212;
case 9:return 243;
case 10:return 273;
case 11:return 304;
case 12:return 334;
}
}
};
int main()
{
int year1,month1,day1;
int sum;
cout<<"please input year,monthand day:"<<endl;
cin>>year1>>month1>>day1;
days op1(year1,month1,day1);
if(year1%4==0&&year1%100!=0 || year1%400==0)
{
cout<<"是第"<<op1.leap()+1+day1<<"天"<<endl;
}
else
cout<<"是第"<<op1.leap()+day1<<"天"<<endl;
system("pause");
return 0;
}
这个题其实网上有很多资料的,主要是用switch选择语句,不懂可以追问,
望采纳
using namespace std;
class days
{
int year,month,day;
public:
days(int year1,int month1,int day1)
{
year=year1;
month=month1;
day=day1;
}
int leap()
{
switch(month)
{
case 1:return 0;
case 2:return 31;
case 3:return 59;
case 4:return 90;
case 5:return 120;
case 6:return 151;
case 7:return 181;
case 8:return 212;
case 9:return 243;
case 10:return 273;
case 11:return 304;
case 12:return 334;
}
}
};
int main()
{
int year1,month1,day1;
int sum;
cout<<"please input year,monthand day:"<<endl;
cin>>year1>>month1>>day1;
days op1(year1,month1,day1);
if(year1%4==0&&year1%100!=0 || year1%400==0)
{
cout<<"是第"<<op1.leap()+1+day1<<"天"<<endl;
}
else
cout<<"是第"<<op1.leap()+day1<<"天"<<endl;
system("pause");
return 0;
}
这个题其实网上有很多资料的,主要是用switch选择语句,不懂可以追问,
望采纳
追问
可以用下递归吗?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询