C语言【程序4】题目:输入某年某月某日,判断这一天是这一年的第几天?
方法一//【程序4】题目:输入某年某月某日,判断这一天是这一年的第几天?#include<stdio.h>int main(){int month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};int i,y,m,d,day=0;scanf("%d %d %d",&y,&m,&d);if(y%...
·
方法一
//【程序4】题目:输入某年某月某日,判断这一天是这一年的第几天?
#include<stdio.h>
int main()
{
int month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int i,y,m,d,day=0;
scanf("%d %d %d",&y,&m,&d);
if(y%400==0 || (y%100!=0&&y%4==0)) //判断闰年
{
month[2]+=1;
}
for(i=0;i<m;i++)
{
day+=month[i];
}
day+=d;
printf("%d",day);
return 0;
}
//2020 12 25 ==>360
//2019 3 15 ==>74
方法二 switch写法
#include<stdio.h>
int main()
{
int y,m,d,sum=0,flag=0;
scanf("%d %d %d",&y,&m,&d);
switch(m)
{
case 1:sum=0;break;
case 2:sum=31;break;
case 3:sum=59;break;
case 4:sum=90;break;
case 5:sum=120;break;
case 6:sum=151;break;
case 7:sum=181;break;
case 8:sum=212;break;
case 9:sum=243;break;
case 10:sum=273;break;
case 11:sum=304;break;
case 12:sum=334;break;
default:sum=0;break;
}
if((y%400==0)||(y%100!=0&&y%4==0)) //判断闰年
flag=1;
if(m>2 && flag)
{
sum+=1;
}
sum+=d;
printf("%d",sum);
return 0;
}
更多推荐



所有评论(0)