2018 年总共有365 天,将2018 年1 月1 日作为计数起点,即计数1,2018 年12 月31 日作为计数终点,即计数365。计数1 代表“2018 年1 月1 日-星期一”,计数10 代表“2018年1 月10 日-星期三”。参照实验6,通过键盘输入一个1-365 之间的值,包括1 和365,基于结构体,将其转换为年、月、日、星期,并输出到屏幕。
#include <stdio.h>
#include <stdlib.h>
typedef struct
{
short year;
short month;
short day;
short week;
}StructTimeVal;
static StructTimeVal CalcTimeVal(int tick);
static StructTimeVal CalcTimeVal(int tick)
{
StructTimeVal tv;
tv.year=2021;
if(1<=tick&&tick<=31)//1-31,1月31天
{
tv.month=1;
tv.day=tick;
}
else if(32<=tick&&tick<=59)//32-59,2月28天
{
tv.month=2;
tv.day=tick-31;
}
else if(60<=tick&&tick<=91)//60-91,3月31天
{
tv.month=3;
tv.day=tick-31-28;
}
else if(92<=tick&&tick<=