题目是输入一个年份和天数,求出在这一年的几月几日
解决时间 2021-03-11 07:05
- 提问者网友:我是我
- 2021-03-10 15:36
#include
using namespace std;
int main(){
int year,day,yue,i;
int month[12];
cout<<"输入年份"<cin>>year;
if(year%4==0&&year%100!=0||year%400==0)
int month[]={31,29,31,30,31,30,31,31,30,31,30,31};
else int month[]={31,28,31,30,31,30,31,31,30,31,30,31};
cout<<"输入天数"<cin>>day;
i=0;
do{
day=day-month[i];
i++;
}while(day>=month[i]);
if(day==0){day=month[i-1];yue=i;}
else yue=i+1;
cout<<"在该年的"<getchar();
getchar();
getchar();
getchar();
return 0;
}
最佳答案
- 五星知识达人网友:纵马山川剑自提
- 2021-03-10 16:42
告诉年份是用于判断是否是闰年.,判断清楚了根据月份天数特点就可以算出来是几月几日了。
判断闰年方法如下(复杂的精确计算方法):
①、普通年能被4整除且不能被100整除的为闰年.(如2004年就是闰年,1901年不是闰年) ②、世纪年能被400整除的是闰年.(如2000年是闰年,1900年不是闰年)
③、对于数值很大的年份,这年如果能整除3200,并且能整除172800则是闰年.如172800年是闰年,86400年不是闰年(因为虽然能整除3200,但不能整除172800)(此按一回归年365天5h48'45.5''计算).
判定公历闰年遵循的一般规律为:四年一闰,百年不闰,四百年再闰.
全部回答
- 1楼网友:孤老序
- 2021-03-10 18:00
楼上的写错了,怎么不改了呢?
我写了个:
#include
void main()
{
int day_s[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int days,year,month,day,i;
printf("请输入年份和天数:");
scanf("%d%d",&year,&days);
if(year%4==0 && year%100!=0
||year%400==0)
{
day_s[2]=29;
}
day=1;
month=1;
for(i=1;i{
if(days{
day=days;
break;
}
days-=day_s[i];
month++;
}
printf("日期:%d年%d月%d日\n",year,month,day);
}
- 2楼网友:深街酒徒
- 2021-03-10 16:59
#include
using namespace std;
int monthday1[]={31,29,31,30,31,30,31,31,30,31,30,31};
int monthday2[]={31,28,31,30,31,30,31,31,30,31,30,31};
int main(){
int year,day,yue,i;
int month[12];
cout<<"输入年份"<>year;
if(year%4==0&&year%100!=0||year%400==0){
#define month monthday1
}
else{
#define month monthday2
}
cout<<"输入天数"<>day;
i=0;
do{
day=day-month[i];
i++;
}while(day>=month[i]);
if(day<0) day=month[i]+day;
else if(day==0){day=month[i-1];yue=i;}
else yue=i+1;
cout<<"在该年的"<
我要举报
大家都在看
推荐资讯