问题及代码:
/*
* Copyright (c) 2014, 烟台大学计算机学院
* All rights reserved.
* 文件名称:Project4.cpp
* 作 者:陈旭
* 完成日期:2014年12月22日
* 版 本 号:v1.0
*
* 问题描述:输入两个人的生日,求出他们相差多少天
* 输入描述:略
* 程序输出:略
*/
#include <iostream>
using namespace std;
struct Date
{
int year;
int month;
int day;
};
int d[13]= {0,31,28,31,30,31,30,31,31,30,31,30,31};
int days(Date);
int main()
{
Date date;
int d1=0,d2=0,t;
cout<<"输入第一个人的出生日期:";
cin>>date.year>>date.month>>date.day;
d1=days(date);
cout<<"输入第二个人的出生日期:";
cin>>date.year>>date.month>>date.day;
d2=days(date);
t=d2-d1;
if(d2<d1)
t=-t;
cout<<"他们两个人的生日差"<<t<<"天。"<<endl;
return 0;
}
int days(Date m)
{
int n=0,i;
for(i=1990; i<m.year; i++)
{
n=365+n;
if((i%4==0&&i%100!=0)||i%400==0)
n=n+1;
}
for(i=1; i<m.month; i++)
n=d[i]+n;
n=n+m.day;
if((m.year%4==0&&m.year%100!=0)||m.year%400==0)
n=n+1;
return n;
}
运行结果:
知识点总结:
通过这个程序的编写,让我们更加了解清楚结构体变量及拓展。
学习心得:
好好学习,天天向上。不懂还是要参考的。