代码段如下:
#include <stdio.h>
#include <string.h>
#include <stdbool.h>
struct data
{
int years;
int month;
int day;
int num;
};
bool is_leap(int years)
{
//1.判断是否是闰年
//闰年 是否能被100整除? --是的话 能否被400整除
//是否能被4整除
if (years % 100 == 0)
{
if (years % 400 == 0)
{
//这是闰年
return true;
}
}
else
{
if (years % 4 == 0)
{
//这也是闰年
return true;
}
}
return false;
}
int main()
{
int i;
int is_leap_days[] = { 31,29,31,30,31,30,31,31,30,31,30,31 };
int is_ping_days[] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
struct data data1;
printf("请输入年 月 日:");
scanf("%d%d%d", &data1.years,&data1.month,&data1.day);
if (is_leap(data1.years))
{
data1.num = 0;
for (i = 0; i < data1.month - 1; i++)
{
data1.num += is_leap_days[i];
}
data1.num += data1.day;
}
else
{
data1.num = 0;
for (i = 0; i < data1.month - 1;i++)
{
data1.num += is_ping_days[i];
}
data1.num += data1.day;
}
printf("%d年%d月%d日,是本年度中的第%d天",
data1.years,data1.month,data1.day,data1.num);
return 0;
}