第17周项目4-日期结构体之日期之差
来源:互联网 发布:在淘宝网上怎么买彩票 编辑:程序博客网 时间:2024/05/17 01:40
/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:刘畅 * 完成日期:2014 年 12 月 19 日 * 版 本 号:v1.0 * * 问题描述:定义一个表示结构体变量(包括年、月、日),输入两个人的生日保存在结构体中,求两个人相差多少天* 输入描述:分别输入甲和乙的出生日期,* 程序输出:输出两人天数之差。
#include <iostream>using namespace std;struct Date{ int year; int month; int day;};int Day(int y,int m,int d);int main(){ Date date1,date2,date3; cout<<"请输入甲的出生日期:"; cin>>date1.year>>date1.month>>date1.day; cout<<"请输入乙的出生日期:"; cin>>date2.year>>date2.month>>date2.day; int days,i,m=0; if (date1.year>date2.year) { date3=date1; date1=date2; date2=date3; } for (i=date1.year; i<date2.year; ++i) { if ((i%4==0&&i%100!=0)||i%400==0) m++; } days=(date2.year-date1.year)*365+m+Day(date2.year,date2.month,date2.day)-Day(date1.year,date1.month,date1.day); cout<<"甲和乙的生日相差"<<days<<"天."; return 0;}int Day(int y,int m,int d){ int sum=d; for(int 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; } return sum;}
运行结果:
学习心得:
醉了,突然发现漏掉项目4的第二题,果然还是粗心啊,赶紧补做。
程序是做出来了,可是输入了几种情况用手机一天一天的算好像总差那么一两天,但也不知道是错了还是对了,看了看别人的,差得也不是一点半点。。。
1 0
- 第17周项目4-日期结构体之日期之差
- 第17周项目5--玩日期时间(两个日期天数之差,秒数之差)
- 第17周项目4-日期结构体(2)生日差几天
- 第17周项目4-日期结构体(生日差)
- 第17周项目4--日期结构体
- 第17周项目4(1)-日期结构体
- 第17周项目4(2)-日期结构体
- 第17周项目4-日期结构体
- 第17周【项目 4 - 日期结构体】(1)
- 第17周【项目 4 - 日期结构体】(2)
- 第17周项目4-日期结构体
- 第17周项目4—日期结构体
- 第17周项目4-日期结构体之一
- 第17周项目4-日期结构体
- 第17周项目4--日期结构体
- 第17周 项目4- - 日期结构体
- 第17周项目4-日期结构体(1)
- 第17周 项目4 - 日期结构体<2>
- javascript数组的直接量语言允许有可选的结尾的逗号
- 十七周项目三--胖子伤不起
- 第十七周项目四—日期结构体
- struts.xml配置文件
- JAVA邮件发送的简单实现
- 第17周项目4-日期结构体之日期之差
- Bullet(Cocos2dx)之Hello World(vs2012)
- spring security3.x学习(21)_关于方法过滤
- Metasploit常用方法以及名词解释
- Java集合框架中的接口和实现类
- 简单原始JS实现信息提示及隐藏
- 变-颓势下的凤凰涅槃-发表于程序杂志第12期
- buildroot2014.08交叉编译器的配置
- Visual Studio配置MySql数据库