- 1、本文档共33页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C新闻信息管理系统
C++新闻信息管理系统报告
2015年 3月 6 日
一 课程设计题目与要求包括题目与系统功能要求
已知一个日期类 Date,其数据成员如下 class Date{ private: int m_year,m_month,m_day; //分别代表一个日期中的年月日 int m_totalDaysYear; //年份 m_year 中的总天数 }; 1. 在此基础上,请完善以下成员函数声明和定义,要求声明为 public 访问标识,且 成员函数在类外定义:
默认的构造函数,要求具有三个默认值分别为 2001(年),1(月)和 1(日) 的形式参数,并在此构造函数内部根据 m_year 的值,计算总天数。
重载赋值操作符。
析构函数。
增加并实现以下类Date的成员函数,其功能和声明如下 int getDaysofYear(); //返回一个日期在当年中的天数,如 2014/ 2/12 返回 43 ;int getRemainingDaysofYear(); //返回一个日期在当年中的余下的天数,如 2014/ 1/12 返回 353; int compare(const Date date); //比较 date 和当前对象的大小, 分别返回 1,0 和-1 代表当前对象的日期大于, 等于或小于 date ;int operator-(const Date date); //计算并返回 date 和当前调用对象相差的天数 ;Date operator+(int days); //计算当前对象加上 days 天数的日期,并返回结果
5)定义并实现一个类 Date 的友元函数, 声明和功能如下 friend ostream operator(ostream out, const Date date); //按照 年/月/日格式输出, 如 2014/ 1/12 6); 定义一个内联函数,其函数名和形式参数如下: isLeapYear(int year ), 要求返回值为布尔类型,其功能为判断 year 是否是闰 年,闰年返回 true,非闰年返回 false。
2. 在上题提基础上,设计一个新闻类,要求能够记录新闻发生的日期、编号(整数 从 1 开始)、新闻类型、新闻标题、发生的地点以及新闻的内容。 该类的部分数据 成员声明如下: class News{ private: string m_news; //存储新闻内容,假设单词间以空格隔开,无换行符和Tab符, Date m_date; //新闻报道的时间 public: };
实现功能:
实现每条新闻自动编号,编号从 1 开始;
某类型新闻在某段时间内发生的次数;如 2013 年 1 月 1 日到 2013 年 12 月 31 日期间体 育类的新闻数目。
根据特定关键词有哪些信誉好的足球投注网站相关的新闻,并将其输出到屏幕,如 anti-corruption
统计每条新闻的英文单词数目
可增加和删除新闻, 增加或删除的结果保存到本地文件中
6) 在某日期之后一段时间内报道的新闻,并将其输出到屏幕, 如在 2013/1/14 的 169 天 内报道的新闻 要求: 完善类的设计,实现相应功能,请加以说明你的设计。 数据成员以 m_ 开头,如 m_news, 函数成员请用有意义的英文单词 如上题 getRemainingDaysofYear()。
假定新闻类型如下: enum NewsType{Education,Politic,Sport,Science,Weather}; 每条新闻按以下格式存储在本地文本文件中,
ID:123 Date:2014/1/13 Type: Sport Title:AustralianOpen2014:Roger Federercanget backtohisbest Address:Australian Content: Stefan Edberg believes he can help get Roger Federer back to his best. The Swedish six-time Grand Slam winner will be a part of Federers coaching team for 10 weeks in 2014, starting with the Australian Open. Swiss Federer, 32, won the last of his 17 Grand Slams at Wimbledonin2012.
二 需求分析,包括问题描述、系统环境、运行要求等
1.问题描述
本题中要求书写两个类,一个类为时间类,一个是新闻类。在时间类中,有各种处理时间的函数和重
文档评论(0)