课程首页在:http://blog.csdn.net/sxhelijian/article/details/11890759,内有完整教学方案及资源链接

【程序阅读】阅读程序“简单C++学生信息管理系统”,找出其中出现构造函数、友元函数、运算符重载、静态数成员语法现象出现的位置,仔细体会其用法,在以后的设计中能够灵活应用有关方法和技巧

项目1-3直接复制第8周的代码,加入要求的运算符重载定义后,作为第9周的任务另外发博文。
【项目1】在第8周项目1基础上
(1)再定义一目运算符 -,-c相当于0-c。
(2)定义Complex类中的<<和>>运算符的重载,实现输入和输出,改造原程序中对运算结果显示方式,使程序读起来更自然。

【项目2】在第8周项目2基础上
(1)定义对时间对象的自增和自减一目运算符

 //一目运算符的重载CTime operator++(int);//后置++,下一秒CTime operator++();//前置++,下一秒,前置与后置返回值不一样CTime operator--( int);//后置--,前一秒CTime operator--();//前置--,前一秒

(2)定义Time类中的<<和>>运算符重载,实现时间的输入输出,改造原程序中对运算结果显示方式,使程序读起来更自然。

【项目3】在第8周项目3基础上
(1)定义分数的一目运算+和-,分别代表分数取正和求反,将“按位取反运算符”~重载为分数的求倒数运算。
(2)定义分数类中<<和>>运算符重载,实现分数的输入输出,改造原程序中对运算结果显示方式,使程序读起来更自然。

【项目4】建立一个向量类MyVector,声明如下,请完成类的定义

class MyVector          //定义向量类
{
public:MyVector(int m);    //构造函数,共有m个元素的向量,元素值预置为0MyVector(const MyVector &v);  //复制构造函数~MyVector(); //析构函数:释放动态数组所占用的存储空间friend istream &operator>>(istream &input, MyVector &d);friend ostream &operator<<(ostream &output, const MyVector &d);friend MyVector operator+(const MyVector &d1,const MyVector &d2);//向量相加,对应位置上的元素相加friend MyVector operator-(const MyVector &d1,const MyVector &d2);//向量相减,对应位置上的元素相减bool operator==(const MyVector &d);//判断两个矩阵是否相等,即对应位置上的所有元素是否相等
private:int *Array;       //Array 为动态数组指针,指向向量占用内存的起始地址int num;          //向量中元素个数
};
int main(){MyVector d1(5),d2(5);cout<<"输入d1——";cin>>d1;cout<<"输入d2——";cin>>d2;cout<<"d1="<<d1<<endl;cout<<"d2="<<d2<<endl;cout<<"d1+d2="<<d1+d2<<endl;cout<<"d1-d2="<<d1-d2<<endl;cout<<"d1"<<((d1==d2)?"==":"!=")<<"d2"<<endl;return 0;
}

【项目5】设计一元一次方程类,求形如ax+b=0的方程的解。
例如:输入3x-8=0时,输出的方程的解为x=2.66667;
再如:输入5s+18=0时,输出的方程的解为s=-3.6;

class CEquation
{
private:double a;     // 未知数系数double b;     // 常数项char unknown; // 代表未知数的符号
public:CEquation(double aa=0,double bb=0);friend istream &operator >> (istream &in,CEquation &e);friend ostream &operator << (ostream &out,CEquation &e);double Solve();char getUnknown();
};
int main()
{   CEquation e;cout<<"请输入方程(格式:ax-b=0,a、b为常数,x处是代表未知数的字母):";cin>>e;   //在两次测试中,分别输入3x-8=0和50s+180=0cout<<"方程为:"<<e;cout<<"方程的解为:"<<e.getUnknown()<<"="<<e.Solve()<<endl; //对两次测试,分别输出x=...和s=...e.Solve();
}
==================== 迂者 贺利坚 CSDN博客专栏=================
|== IT学子成长指导专栏 专栏文章的分类目录(不定期更新) ==|
|== C++ 课堂在线专栏  贺利坚课程教学链接(分课程年级) ==|
|== 我写的书——《逆袭大学——传给IT学子的正能量》    ==|
===== 为IT菜鸟起飞铺跑道,和学生一起享受快乐和激情的大学 =====

2013级C++第9周(春)项目——运算符重载(二)相关推荐

  1. C++第15周(春)项目2 - 用文件保存的学生名单

    课程首页在:http://blog.csdn.net/sxhelijian/article/details/11890759.内有完整教学方案及资源链接 本程序中须要的相关文件.请到http://pa ...

  2. 2015级C++第3周实践项目

    [项目1:个人所得税计算器] 编写选择结构程序,输入个人月收入总额,计算出他本月应缴税款和税后收入(计算办法见附:关于个人所得税的有关背景知识). (1)自选if语句的嵌套或/和switch语句完成程 ...

  3. 2015级C++第14周实践项目 模板

    [项目1-排序函数模板] 已知 void Sort(int a[],int size); void Sort(double a[],int size); 是一个函数模板的两个实例,其功能是将数组a中的 ...

  4. 2015级C++第2周实践项目

    [项目1 - 宣告"主权"] 你已经是CSDN博客主了,用IT人特有的方式,编一段程序.在屏幕上输出你想说的话.按要求公布博文,作为我们的开山之作. [项目2 - 胖子不想说体重] ...

  5. C++第9周(春)项目5 - 一元一次方程类

    课程首页在:http://blog.csdn.net/sxhelijian/article/details/11890759,内有完整教学方案及资源链接 [项目5]设计一元一次方程类.求形如ax+b= ...

  6. 2013级C++第18周——收官来战

    课程主页在:http://blog.csdn.net/sxhelijian/article/details/11890759 Problem A: 1-n之间能够被m整除的数的和 Descriptio ...

  7. C++程序设计课程主页-2013级

    本课2014级的方案更完整,且有完整视频,请有需求的人士,移步到---->2014C++ 我和我的新一级学生在此开始"C++程序设计"课程的学习.借助于博客,我们将继续将&q ...

  8. 地大计算机学院田甜,【学霸画像】第七十一期—记计算机学院2013级本科生詹才韬...

    编者按:詹才韬,男,中国地质大学(武汉)2013级计算机学院学生,专业计算机科学与技术,平均绩点4.07,连续三年专业第一(1/122).ESS班成员,托福103(口语26),GRE 158+167+ ...

  9. 计算机培训研修心语,学子榜样 | 2018级国家励志奖学金程春旭:不忘初心,砥砺前行...

    原标题:学子榜样 | 2018级国家励志奖学金程春旭:不忘初心,砥砺前行 个人简介 程春旭,女,河北衡水人,系华中师范大学计算机学院2018级本科生,中国共青团员,学分绩排名年级二十五(共计两百人), ...

最新文章

  1. Shell脚本编程剖析(更新完毕)
  2. java代码统计收藏量_干货收藏 | 35个Java 代码性能优化总结(上)
  3. 【数据竞赛】百赛百试,十试九灵的特征筛选策略-Pearson Correlation
  4. 台大林轩田《机器学习基石》系列课程教材的习题更新完毕了
  5. longvalue_Java Short类longValue()方法及示例
  6. django加载本地html
  7. 3499元被吐槽太贵!A15加持:新iPhone SE正式发布 还有“苍蝇绿”iPhone 13
  8. HBase——集群搭建
  9. 计算机考试模拟软件双击为什么打不开,win7系统双击“计算机”打不开的解决方法...
  10. 2019年全国一二线城市程序员工资大调查
  11. favicon 尺寸问题
  12. 激励函数简介 Tensorflow最简单的三层神经网络及matplotlib可视化 附激励函数常见类型
  13. H3C服务器配置raid
  14. 软件测试行业的现状和前景
  15. 爱码物联|9载技术沉淀,只为颠覆而生!
  16. Java构造方法定义、对象实例化的过程、对象的引用和实体
  17. 代码操作redis集群报错:(error) MOVED 解决方法
  18. GitHub的Fork是什么意思
  19. js中的repeat()
  20. HDMI转MIPI DSI芯片方案TC358870XBG

热门文章

  1. LIDC肺结节的下载
  2. elasticsearch kibana,logstash 百度云盘下载
  3. ILI9341的使用之【二】ILI9341介绍
  4. 一些支付机构绕过监管,游走于灰色地带
  5. 消息框:服务器正在运行中 OLE解决办法
  6. AIDMA VS AISAS vs ISMAS 营销法则
  7. 基于51单片机的直流电机转速显示+加速减速启停
  8. ACRA崩溃报告详解
  9. 无线路由设置中文SSID
  10. 盘点2019最新前端框架