C语言循环结构求教从键盘上输入年、月、日,计算自当年元旦到这个日期一共有多少天并输出。
发布网友
发布时间:2022-05-24 09:14
我来回答
共3个回答
热心网友
时间:2023-10-09 18:40
int isLeapYear(int year)
{
if(year%100==0)
{
if(year%400==0)
return 1;
else
return 0;
}
else
{
if(year%4==0)
return 1;
else
return 0;
}
}
void main()
{
int days[12]={31,28,31,30,31,30,31,30,31,30,31,30};
int year,month,day,i,sum;
scanf("%d",&year);
scanf("%d",&month);
scanf("%d",&day);
if(isLeapYear(year))days[1]=29;
sum=0;
for(i=0,i<month-1;i++)
sum+=days[i];
sum+=(day-1);
printf("从%d年1月1日到%d年%d月%d日总共有%d天\n",year,year,month,day,sum);
}
求采纳,不懂可追问。
热心网友
时间:2023-10-09 18:41
int howdays(int year,int month,int day)
{
int sum=0;
int arun[11]={31,29,31,30,31,30,31,31,30,31,30};
int aping[11]={31,28,31,30,31,30,31,31,30,31,30};
if (((year%4==0)&&(year%100!=0))||year%400==0)
{
for (int i=1;i<month;i++)
{
sum+=arun[i-1];
}
}
else
{
for (int i=1;i<month;i++)
{
sum+=aping[i-1];
}
}
sum+=day;
printf("今天是第%d天\n",sum);
return sum;
}
int main()
{
int year,month,day;
printf("请输入年 月 日:");
scanf("%d,%d,%d",&year,&month,&day);
int days=howdays(year,month,day);
return 0;
}
热心网友
时间:2023-10-09 18:41
思路:
(1)判断年份是否是闰年(2月为29天),其它年份为28天
(2)1 3 5 7 8 10 12 (31天)
(3) 2 4 9 11 (30天)追问怎么打出来