C语言定义一个结构体变量(包括年、月、日),输入一个日期,计算该日在本年中是第几天。

2024-11-08 12:05:42
推荐回答(1个)
回答(1):

//希望我的回答对你的学习有帮助
#include 

struct ymd { 
int Y,M,D; 
}; 
const short MonthDay[]={0,31,28,31,30,31,30,31,31,30,31,30,31}; 
 
int YMD_2_JD(int Y, int M, int D){ 
const short MonthDay[]={0,31,28,31,30,31,30,31,31,30,31,30,31}; 
int JD,i; 
JD=D; 
for (i=0;i if (((Y%4==0)&&(Y%100!=0)||(Y%400==0)) && (M>2)) JD++;  
return JD; 

  
 
int main() { 
int d; 
struct ymd a;  
while(~scanf("%d%d%d",&a.Y,&a.M,&a.D)){
d=YMD_2_JD(a.Y,a.M,a.D); 
printf("%d\n",d); 


return 0; 
}