c语言按yyyy-mm-dd格式输入一个日期,如2004-10-31,判断这是这一年的第几天
答案:3 悬赏:40 手机版
解决时间 2021-11-24 19:57
- 提问者网友:寂寞撕碎了回忆
- 2021-11-24 08:39
c语言按yyyy-mm-dd格式输入一个日期,如2004-10-31,判断这是这一年的第几天
最佳答案
- 五星知识达人网友:平生事
- 2021-11-24 09:36
#include"stdio.h"
int main()
{
int leap(int y);
int year,month,day;
int sum=0,i,m[12]={31,0,31,30,31,30,31,31,30,31,30,31};
printf("Input a year-month-day:");
scanf ("%d-%d-%d",&year,&month,&day);
if (leap(year))
{m[1]=29;}
else
{m[1]=28;}
for (i=0;i<=(month-2);i++)
{sum+=m[i];}
sum+=day;
printf ("Total=%d\n",sum);
}
int leap(int y)
{
int leapyear=0;
if (y%4!=0)
leapyear=0;
else if (y%100!=0)
leapyear=1;
else if (y%400!=0)
leapyear=0;
else
leapyear=1;
return(leapyear);
}
//输入的时候 按 2004-10-31这样格式输入
int main()
{
int leap(int y);
int year,month,day;
int sum=0,i,m[12]={31,0,31,30,31,30,31,31,30,31,30,31};
printf("Input a year-month-day:");
scanf ("%d-%d-%d",&year,&month,&day);
if (leap(year))
{m[1]=29;}
else
{m[1]=28;}
for (i=0;i<=(month-2);i++)
{sum+=m[i];}
sum+=day;
printf ("Total=%d\n",sum);
}
int leap(int y)
{
int leapyear=0;
if (y%4!=0)
leapyear=0;
else if (y%100!=0)
leapyear=1;
else if (y%400!=0)
leapyear=0;
else
leapyear=1;
return(leapyear);
}
//输入的时候 按 2004-10-31这样格式输入
全部回答
- 1楼网友:青尢
- 2021-11-24 11:06
爱的vadbvadabd
- 2楼网友:轻雾山林
- 2021-11-24 10:09
int m[12]={31,28,31,30,31,30,31,31,30,31,30,31};
char s[11];
int ye,mo,day,i;
gets(s);
for(i=0;i<10;i++)
s[i]-=48;
ye=s[0]*1000+s[1]+100+s[2]*10+s[3];
mo=s[5]+10+s[6];
day=s[8]*10+s[8];
for(i=0;i day+=m[i];
if((ye%4==0&&(ye%400==0||ye%100!=0))mo>2)
day++;
char s[11];
int ye,mo,day,i;
gets(s);
for(i=0;i<10;i++)
s[i]-=48;
ye=s[0]*1000+s[1]+100+s[2]*10+s[3];
mo=s[5]+10+s[6];
day=s[8]*10+s[8];
for(i=0;i
if((ye%4==0&&(ye%400==0||ye%100!=0))mo>2)
day++;
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯