第十二周 项目三 日期时间类
2015-05-29 17:00
330 查看
问题及代码:
运行结果:
知识点总结:
思路清晰,把一大块任务分成不同的小类,明确每个类的名字与作用
/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:宋健 * 完成日期:2015年 5月 29日 * 版 本 号:v1.0 * * 问题描述:定义一个日期类Date,数据成员包括年、月、日,SetDate(int y,int m,int d)和PrintDate()函数分别用于设置日期和显示日期;再定义一个时间类Time,数据成员包括时、分、秒,SetTime(int h,int m,int s)和PrintTime()函数分别用于设置时间和显示时间,在此基础上再定义一个日期时间类TimeDate,充分利用已有的两个类中提供的方法,实现日期和时间的设置和显示。请实现类TimeDate,下面是用于测试的主函数及参考运行结果。 * 程序输入: * 程序输出: */ #include <iostream> using namespace std; class Date { protected: int year; int month; int day; public: void SetDate(int y,int m,int d); void PrintDate(); Date(int,int ,int); }; Date::Date(int y,int m,int d) { year=y; month=m; day=d; } void Date::SetDate(int y,int m,int d) { year=y; month=m; day=d; } void Date::PrintDate() { cout<<year<<"年"<<month<<"月"<<day<<"日"; } class Time {protected: int hour; int minute; int second; public: void SetTime(int h,int m,int s); void PrintTime(); Time(int,int ,int); }; Time::Time(int h,int mi,int s) { hour=h; minute=mi; second=s; } void Time::SetTime(int h,int m,int s) { hour=h; minute=m; second=s; } void Time::PrintTime() { cout<<hour<<":"<<minute<<":"<<second; } class TimeDate:public Date,public Time { public: TimeDate(int,int,int,int,int,int); void PrintDate_Time(); TimeDate():Date(0,0,0),Time(0,0,0){} }; TimeDate::TimeDate(int y,int m,int d,int h,int mi,int s):Date(y,m,d),Time(h,mi,s){} void TimeDate::PrintDate_Time() { PrintDate(); cout<<" "; PrintTime(); cout<<endl; } int main() { TimeDate dt_a,dt_b(2010,4,16,9,30,0); cout<<"dt_a: "; dt_a.PrintDate_Time(); cout<<endl; cout<<"dt_b: "; dt_b.PrintDate_Time(); dt_a.SetTime(20,00,00); dt_a.SetDate(2008,8,7); cout<<endl; cout<<"dt_after uptate: "; dt_a.PrintDate_Time(); return 0; }
运行结果:
知识点总结:
思路清晰,把一大块任务分成不同的小类,明确每个类的名字与作用
相关文章推荐
- DeJaVu update history
- 【转】 Git 常用命令详解(二)----不错
- 我是怎么理解编程的?
- .net 过滤特殊字符
- iframe自适高度宽度,多版本浏览器兼容
- 关于proplists:get_value/2 与lists:keyfind/3 的效率比较
- UED大全
- android 单线程模型理解
- openstack 之 虚拟机管理利器virt-manager 的安装
- Js实现类似Excel工作表用方向键切换输入框焦点
- KVM ioctl API
- 最长回文子串_1528
- asp.net文件下载
- SQL约束
- SQL查询语句练习
- 多校+CF简单题
- SQL Server 存储过程
- sql语句的细节优化
- linux 下crontab -e 命令创建定时任务
- Java 与中文字体