C语言——日期转换为天数

问题描述

编写一个程序,用户输入年月日,显示该日是该年的第几天。

代码

#include <stdio.h>
struct when
{
	int year;
	int month;
	int day;
};
int days(struct when date)
{
	int m[]={31,28,31,30,31,30,31,31,30,31,30,31};
	int i,day=0;
	if(date.year%4==0)
	{m[1]=29;}
	for(i=0;i<date.month-1;i++)
	{
	   day=day+m[i];  
	}
	day=day+date.day;
	return day;	
}
int main(int argc, char *argv[])
{
	struct when date;
	int b;
	printf("请输入日期\n");
	scanf("%d.%d.%d",&date.year,&date.month,&date.day);
	b=days(date);
	printf("该日是本年的第%d天\n",b);
	return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_63099085/article/details/126009546