求个C语言程序.要求输入任意一个年月日的日期.计算出是当年的第多少天.
答案:2 悬赏:10 手机版
解决时间 2021-04-05 00:46
- 提问者网友:嗝是迷路的屁
- 2021-04-04 21:39
求个C语言程序.要求输入任意一个年月日的日期.计算出是当年的第多少天.
最佳答案
- 五星知识达人网友:行路难
- 2021-04-04 22:06
#include
main()
{
int y,m,d,a[12],t=0,s,i;
printf("输入你要查询的年月日 空格隔开\n");
lop:
scanf("%d%d%d",&y,&m,&d);
a[0]=0;
a[1]=31;
a[3]=31;
a[4]=30;
a[5]=31;
a[6]=30;
a[7]=31;
a[8]=31;
a[9]=30;
a[10]=31;
a[11]=30;
a[12]=31;
if(y%4==0&&y%100!=0) a[2]=29;
else if(y%100==0&&y%400==0) a[2]=29;
else
a[2]=28;
if(m>12||d>a[m]) {printf("错误日期 重新输入!\n");
goto lop;}
else
{
for(i=0;i<=m-1;i++)
{
t=t+a[i];
}
s=t+d;
printf("%d年%d月%d号是%d年的第%d天\n",y,m,d,y,s);
}
}
以前写的 可能不够简洁
main()
{
int y,m,d,a[12],t=0,s,i;
printf("输入你要查询的年月日 空格隔开\n");
lop:
scanf("%d%d%d",&y,&m,&d);
a[0]=0;
a[1]=31;
a[3]=31;
a[4]=30;
a[5]=31;
a[6]=30;
a[7]=31;
a[8]=31;
a[9]=30;
a[10]=31;
a[11]=30;
a[12]=31;
if(y%4==0&&y%100!=0) a[2]=29;
else if(y%100==0&&y%400==0) a[2]=29;
else
a[2]=28;
if(m>12||d>a[m]) {printf("错误日期 重新输入!\n");
goto lop;}
else
{
for(i=0;i<=m-1;i++)
{
t=t+a[i];
}
s=t+d;
printf("%d年%d月%d号是%d年的第%d天\n",y,m,d,y,s);
}
}
以前写的 可能不够简洁
全部回答
- 1楼网友:夜风逐马
- 2021-04-04 22:45
很简单呀:
if(date=="20100101")return 1;
else if(date=="20100102")return 2;
else if(...)...;
...;
.
.
.
...;
else return 365;
判断365次就可以啦,不过要考虑一下闰年,嗯
if(date=="20100101")return 1;
else if(date=="20100102")return 2;
else if(...)...;
...;
.
.
.
...;
else return 365;
判断365次就可以啦,不过要考虑一下闰年,嗯
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯