两人的生日差

输入代码:

/*
*Copyright (c)2014,烟台大学计算机与控制工程学院
*All rights reserved.
*文件名称:sum123.cpp
*作    者:林海云
*完成日期:2014年12月23日
*版 本 号:v2.0
*
*问题描述:输入两人生日,求其相差天数
*程序输入:
*程序输出:
*/
#include<iostream>
#include<cmath>
using namespace std;
int day(int y,int m,int d);
struct Date
{
    int year;
    int mouth;
    int day;
};
int main()
{
    Date date1,date2;
    int sum1,sum2,s=0;
    cout<<"请输入第一个人的生日:"<<endl;
    cin>>date1.year>>date1.mouth>>date1.day;
    cout<<"请输入第二个人的生日:"<<endl;
    cin>>date2.year>>date2.mouth>>date2.day;
    sum1=day(date1.year,date1.mouth,date1.day);
    sum2=day(date2.year,date2.mouth,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,i;
    for(i=1; i<=m; i++)
    {
        if(i==1||i==3||i==5||i==7||i==8||i==10||i==12)
            sum+=31;
        else if(i==4||i==6||i==9||i==11)
            sum+=30;
        else
        {
            if((y%4==0)&&(y%100!=0)||(y%400==0))
                sum+=29;
            else
                sum+=28;
        }
    }
    sum+=d;
    return sum;
}

运行结果:

时间: 2024-11-01 10:49:25

两人的生日差的相关文章

两人结队练习源代码操作

一.个人技术和流程 绝大部分软件都是有多人合作完成的.大家的工作相互有依赖关系.最典型的例子就是,某人负责的模块的功能被其他人调用.软件的很多错误都来源于程序员对模块功能的误解.疏忽或不了解模块的变化.如何能让自己负责的模块功能定义尽量明确,模块内部的改变不会影响其他模块,而且模块的质量能得到稳定的.量化的保证?单元测试就是一个很有效的解决方案. 创建单元测试函数的主要步骤是: 设置数据 使用被测试类型的功能 比较实际结果和预期的结果 好的单元测试的标准: 单元测试应该在最基本的功能/参数上验证

人与人最大的差别是坚持

闺蜜,26岁,香港读博.高中时相识,一年后我读文她读理.文理的成绩无法准确对比,但从班级排名来说,她是不如我的,虽然刻苦程度我远不如她.自 此认为,我的智商比她高.高考她上了二本的院校,那四年回我短信通常在凌晨之后,那个点她刚刚上完自习.三年后考研,去了北京交大,好几次打电话都说学多 了胃不行,总吐.研二去了香港,成了我身边最年轻的一位女博士,每月奖学金折合人民币一万四.高中的青葱岁月,我们每天一起回家.高中后这七年多的时间 里,虽然联系没断,我们的见面次数却不超过七次,原因很简单,她在学习,在

两人之间的一些参数

身材有黄金比例,婚姻也一样,身高.年龄,甚至月薪之间的差异,都可能成为影响两人相处的因素.以下一些研究得出的黄金比例虽非人人适用,但我们不妨做个参考. 12厘米高度差.这是男女最佳身高差,无论牵手.拥抱.接吻,都是最和谐差度.男生太矮,女孩会觉得平淡,太高又难以企及. 点评:大多数女生有比较强的被保护欲,希望男伴侣比自己高,这样比较有安全感.而实际上,男性普遍比女性高,但如果高出10厘米以上,则视觉效 果比较明显,女生的娇小和男生的强大可以显现出来.这种差距可以使双方的性别角色更加鲜明,即男人更

两人合作

现代软件产业经过几十年的发展,一个软件有一个人单枪匹马完成,以及很少见了,软件都是在相互合作中完成的.合作的最小单位是两个人,两个工程师在一起,要相互看懂对方的代码并不是一件容易的事,因为每个人对"好"的代码的理解是不一样的,所以一个基准线--什么是好的代码规范和设计规范就很必要了."代码规范"可以分成两个部分:1.代码风格规范.2.代码设计规范. 代码风格规范的原则是:简明,易读,无二义性.例如对一个书写格式方面的规定:缩进最好为4个空格:对行宽的限制:括号:断行

构建之法学习(第四章 两人合作)

第四章 两人合作 1.代码规范  1)代码风格规范.主要是文字上的规定,看似表面文章,实际上非常重要. *原则:简明,易读,无二义性 *缩进:4个空格 *行宽:行宽必须限制,可以限定为100字符 *括号:在复杂的条件表达式中,用括号清除地表示逻辑优先级 *断行与空白的{}行:推荐格式如下 if ( condition ) {        DoSomething(); } else {       DoSomethingElse(); } *分行:不要把多条语句放在一行上.并且,不要把多个变量定

算法学习(3)----求数组中大小最接近的两个元素的差

<算法设计与分析基础>习题1.2 第 9 题如下: 考虑下面这个算法,它求的是数值数组中大小最接近的两个元素的差. 算法: MinDistance(A[0..n-1]) //输入:数字数组 A[0..n-1] //输出:数组中两个大小相差最少的元素的差值 dmin <- ∞ for i <- 0 to n-1 do for j <- 0 to n-1 do if i≠j and |A[[i]-A[j]| < dmin dmin <- |A[i]-A[j]| ret

两人组队,小学生的四则运算

两人组队:王汉斌,尹良亮 需求概要: 编写出一个能自动生成小学四则运算题目的软件,并能够判断其正确性 分析: 由于给小学生出四则运算,其主要是产生随机数,调用加减乘除的方法.其中,最主要的是考虑到除法的问题,因为除法需要使用double型或者float型. 部分代码如下: package fourarithmetic; import java.util.Random;import java.util.Scanner; public class FourArithmetic { /** * 循环输

两人项目---打飞机的游戏

成员:081李国松 055张倩 1.结对题目:关于打飞机的设想 需求分析:游戏是一个娱乐的方式,随着电子设备的普及,游戏已经占领着人们的大量的时间.本小组决定开发一个打飞机的小游戏,由JAVA语言写成,利用键盘操作,操作简单,游戏机制简单. 2.代码截图及合影 具体代码地址:http://github.com/lgspath/- 3.约定的规范 操作界面继承frame,由于时间有限,子弹判定采用方形判定,飞机判定采用方形判定,子弹弹射机制采用镜面反射机制. 4.记录时间 选题讨论:10% 设计思

小游戏●两人对战

利用结构体编写的两人对战小游戏,代码及简要分析如下 1 public struct Fighter 2 { 3 public string name; 4 public int blood; 5 public int attack; 6 public int defense; 7 public int hit; 8 public int hide; 9 } 10 11 12 static void Main(string[] arge) 13 { 14 15 //定义一组对手 16 Fighte