第17周项目4-两人生日相差几天
2014-12-20 11:01
190 查看
问题及代码:
运行结果:
知识点总结:
求两人生日相差多少天。用到了结构体。
学习心得:
主要是分情况进行比较,找到最小的作为一个基数,加上多的那几年,还要利用求当年第几天的程序。
/* *Copyright (c)2014,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:days.cpp *作 者:单昕昕 *完成日期:2014年12月20日 *版 本 号:v1.0 * *问题描述:求两人生日相差几天。 *程序输入:两人生日。 *程序输出:两人生日相差几天。 */ #include <iostream> #include <cmath> using namespace std; int day(int y, int m, int d); struct Date { int year; int month; int day; }; int main() { Date date1,date2; int sum1,sum2,s=0; cout<<"请输入第一个人的生日:"; cin>>date1.year>>date1.month>>date1.day; cout<<"请输入第二个人的生日:"; cin>>date2.year>>date2.month>>date2.day; sum1=day(date1.year,date1.month,date1.day); //先分别求是当年第几天 sum2=day(date2.year,date2.month,date2.day); if(date1.year>date2.year) //分两种情况进行计算 { while(date1.year>=date2.year) { date1.year--; if(((date1.year%4==0&&date1.year%100!=0)||date1.year%400==0)) //判断是否闰年 s+=366; else s+=365; date1.year--; } sum1+=s; sum1-=sum2; cout<<"这两人的生日相差"<<sum1<<"天."<<endl; } else if(date1.year<date2.year) { while(date2.year>=date1.year) { date2.year--; if(((date2.year%4==0&&date2.year%100!=0)||date2.year%400==0)) s+=366; else s+=365; date2.year--; } sum2+=s; sum2-=sum1; cout<<"这两人的生日相差"<<sum2<<"天."<<endl; } else cout<<"这两人的生日相差"<<fabs(sum1-sum2)<<"天."<<endl; //直接求天数的绝对值 return 0; } int day(int y, int m, int d) //求当年第几天 { int sum=0,n; for(n=1; n<m; ++n) { if ((y%4==0&&y%100!=0)||y%400==0) { if(n==1||n==3||n==5||n==7||n==8||n==10||n==12) sum+=31; else if (n==2) sum+=29; else sum+=30; } else { if(n==1||n==3||n==5||n==7||n==8||n==10||n==12) sum+=31; else if (n==2) sum+=28; else sum+=30; } } sum+=d; return (sum); }
运行结果:
知识点总结:
求两人生日相差多少天。用到了结构体。
学习心得:
主要是分情况进行比较,找到最小的作为一个基数,加上多的那几年,还要利用求当年第几天的程序。
相关文章推荐
- 第17周项目4两人的生日相差几天
- 第17周项目4-两人生日差几天
- 第十七周 项目四(2)--两人生日相差几天
- 第17周项目4.2 日期结构体——生日相差几天
- 第17周项目4-生日相差几天
- 第17周 项目4-2 生日相差几天
- 结构体计算两人生日相差几天
- 第十六周项目4 - 日期结构体(生日相差几天)
- 17周,项目四,结构体计算两人生日相差的天数
- 第17周项目4-日期结构体(2)生日差几天
- 第十七周项目四 两人生日差几天
- 第十七周项目4-两人生日相差多少天
- 第十七周项目 4 日期结构体——生日相差几天
- 两人生日相差几天?
- 第十七周项目四 日期结构体-(2)两人生日差几天
- 第17周项目4-2两人出生日期相差多少天
- 第十八周项目四-1 定义结构体算两人生日相差多少天
- 第十六周项目4 - 日期结构体(生日相差几天)
- 生日相差几天
- 第十七周项目四—生日差几天 .