用c语言编写这道题的程序

2025-02-01 21:44:06
推荐回答(1个)
回答1:

#include "stdio.h"
#include "string.h"
int ts(int d[]){
int day=0,flag;
if((d[0]%4==0&&d[0]%100!=0)||(d[0]%400==0)) flag=1;
else flag=0;
switch(d[1]){
case 12:day+=30;
case 11:day+=31;
case 10:day+=30;
case 9:day+=31;
case 8:day+=31;
case 7:day+=30;
case 6:day+=31;
case 5:day+=30;
case 4:day+=31;
case 3:(flag==1)?day+=29:day+=28;
case 2:day+=31;
}
return day+d[2];
}
void main()
{
int d[3],day;
printf("输入日期,格式为:年 月 日(例:2015 12 23)\n");
scanf("%d%d%d",&d[0],&d[1],&d[2]);
day=ts(d);
printf("%d年%d月%d日是%d年的第%d天\n",d[0],d[1],d[2],d[0],day);
}

请采纳