/*
*copyright (c) 2014, 烟台大学计算机学院
*All rights reserved
*作者:王争取
*日期:2014.12.20
*文件名称:test.cpp
*版本号:v1.0
*问题描述: 输入年.月.日,计算该日是该年的第几天
*输入描述:输入年.月.日
*程序输出: 计算该日是该年的第几天
*/
#include <iostream>
using namespace std;
struct Date
{
int year;
int month;
int day;
} date1,date2;
int days(Date *);
int main()
{
int x,y;
cout<<"input two people birthday :year,month,day:"<<endl;;
cout<<"The first person :";
cin>>date1.year>>date1.month>>date1.day;
cout<<endl<<"The second person :";
cin>>date2.year>>date2.month>>date2.day;
x=days(&date1);
y=days(&date2);
if(x<y)
{
int t;
t=x;
x=y;
y=t;
}
cout<<"两个人的生日相差"<<x-y<<"天";
return 0;
}
int days(Date *date) //计算day
{
int days=0;
for(int i=1; i<date->month; i++)
{
if(date->month==1||date->month==3||date->month==5||date->month==7||date->month==8||date->month==10||date->month==12)
days+=31;
else if(date->month==4||date->month==6||date->month==9||date->month==11)
days+=30;
else if((date->year%4==0&&date->year%100)||date->year%400==0)
days+=28;
else days+=29;
}
days+=date->day;
return days;
}