用C++实现时间的加减运算
来源:互联网 发布:娶洋妞 知乎 编辑:程序博客网 时间:2024/05/01 19:52
#include <iostream>
using namespace std;
struct Time
{
int hour;
int minute;
int second;
};
bool AddTime(Time&desTime, const Time &scrTime);
bool SubtractTime(Time &desTime, const Time &scrTime);
int main()
{
Time t1;
Time t2;
t1.hour = 23;
t1.minute = 40;
t1.second = 50;
t2.hour = 10;
t2.minute = 30;
t2.second = 59;
if ( !AddTime( t1, t2 ) )
{
cout<< "小时: " << t1.hour <<endl
<< "分钟: " << t1.minute <<endl
<< "秒: " << t1.second <<endl;
}
else
{
cout<< "你的输入的时间非法." <<endl;
}
t1.hour = 23;
t1.minute = 40;
t1.second = 50;
cout<< endl;
if ( !SubtractTime( t1, t2 ) )
{
cout<< "小时: " << t1.hour <<endl
<< "分钟: " << t1.minute <<endl
<< "秒: " << t1.second <<endl;
}
else
{
cout<< "你的输入的时间非法." <<endl;
}
return 0;
}
bool AddTime(Time &desTime, const Time &scrTime)
{
if( desTime.hour >= 0 && desTime.hour <= 23 &&
desTime.minute >= 0 && desTime.minute <= 59 &&
desTime.second >= 0 && desTime.second <= 59 &&
scrTime.hour >= 0 && scrTime.hour <= 23 &&
scrTime.minute >= 0 && scrTime.minute <= 59 &&
scrTime.second >= 0 && scrTime.second <= 59 )
{
desTime.second += scrTime.second ;
int n = 0;
if( desTime.second >= 60 )
{
n = 1;
desTime.second -= 60;
}
desTime.minute += scrTime.minute + n;
n = 0;
if( desTime.minute >= 60 )
{
n = 1;
desTime.minute -= 60;
}
desTime.hour += scrTime.hour + n;
if( desTime.hour >= 24 )
{
desTime.hour -= 24;
}
return 0;
}
return 1;
}
bool SubtractTime(Time &desTime, const Time &scrTime)
{
if( desTime.hour >= 0 && desTime.hour <= 23 &&
desTime.minute >= 0 && desTime.minute <= 59 &&
desTime.second >= 0 && desTime.second <= 59 &&
scrTime.hour >= 0 && scrTime.hour <= 23 &&
scrTime.minute >= 0 && scrTime.minute <= 59 &&
scrTime.second >= 0 && scrTime.second <= 59 )
{
int n = 0;
if( desTime.second < scrTime.second )
{
n = 1;
desTime.second += 60;
}
desTime.second -= scrTime.second ;
desTime.minute -= n;
n = 0;
if( desTime.minute < scrTime.minute )
{
n = 1;
desTime.minute += 60;
}
desTime.minute -= scrTime.minute;
desTime.hour -= n;
if( desTime.hour < scrTime.hour )
{
return 1;
}
desTime.hour -= scrTime.hour;
return 0;
}
return 1;
}
- 用C++实现时间的加减运算
- C语言实现一元多项式的加减运算
- C语言 if语句的总结(2)附:用if实现加减运算复习用
- 如何进行时间的加减运算
- 用“+”、“-”能够实现复数的加减运算…
- js 时间运算,时间加减
- C++编程实例——实现简单的时间加减运算
- ASP实现日期的加减运算
- ASP实现日期的加减运算
- 实现补码加减运算的逻辑电路
- Java中如何实现时间的加减
- 位运算实现整数的加减乘数运算
- 经典的例子:mySQL 时间、日期加减运算语句
- C语言实现用位移运算符进行加减乘…
- 指针的加减运算
- 复数的加减运算
- 补码的加减运算
- 补码的加减运算
- HQL: Hibernate查询语言--大小写敏感性问题
- 我真的不知道 你是
- from子句
- 浅谈三层结构原理与用意
- .NET动态生成PDF文件(利用iTextSharp)
- 用C++实现时间的加减运算
- 关联(Association)与连接(Join)
- Hibernate检索策略总结
- Sql Server 读取 Excel/Txt 文件
- 聚集函数
- 工具发布!QQ空间阅读与备份工具
- Ehcache配置文件的详细说明
- ADO.net 里面获取返回值的方法为(c#):
- 田亮叶一茜婚礼 新娘两次感动落泪(图)