C++程序设计上机题.doc_第1页
C++程序设计上机题.doc_第2页
C++程序设计上机题.doc_第3页
C++程序设计上机题.doc_第4页
C++程序设计上机题.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一部分 链表相关联系1做一个函数fun(int,int)。在主函数中定义两个变量int a,b。请设计一个程序能够反映值传递无法对实参进行改变。2做一个函数fun(int &,int &)。在主函数中定义两个变量int a,b。请设计一个程序能够反映引用传递对实参的改变。3做一个函数fun(int *,int *)。在主函数中定义两个变量int a,b。请设计一个程序能够反映指针传递对实参的改变。4定义一个结构体Struct Aint a;A *p;a.请手动建立一个含有三个元素的链表,链表中所有的元素都是A类型的。b.请用图来描述你的建表过程。c.请手动插入一个节点。d.请手动删除一个节点。e.请将上述内容改成自动的过程,也就是用循环结构。f.请做一个查找函数,完成对某个节点的查找。第一部分 类和对象1 集合是具有共同属性(共性)而又能互相区别(个性)的多个成员的汇集起来的整体,构成集合的每个成员称为集合的元素,元素间没有顺序关系。例如:所有的大写英文字母是一个集合,它包括26个元素:A,B,Z。不包含任何元素的集合称为空集合。【要求】自定义一个集合类set,采用数组存放集合的元素。自定义集合运算包括以下操作:(1) 判断元素elem是否为集合set的元素(2) 为集合添加一个元素elem(3) 从集合中删除一个元素elem(4) 复制一个集合,其元素与原集合完全一样(5) 显示集合中的所有元素(6) 求两个集合中相同的元素,即求两个集合的交集(7) 求两个集合中所有的元素,即求两个集合的并集(8) 判断两个集合包含的元素是否完全相同(9) 判断一个集合是否被包含在另一个集合之中,即是否为另一个集合的子集2 编程:建立一个分数类。分数类的数据成员包括分子和分母,操作包括约分、通分、加、减、乘、除、求倒数、比较、显示和输入。分类数的定义如下:class fractionint above;/分子int below;/分母void reduction();/约分void makeCommond(fraction);/通分public:fraction(int=0;int=1);/构造函数fraction add(fraction);/两个分数相加fraction sub(fraction);/两个分数相减fraction mul(fraction);/两个分数相乘fraction div(fraction);/两个分数相除fraction reciprocal();/求倒数bool epual(fraction);/等于运算bool greaterThan(fraction);/大于运算bool lessThan(fraction);void display();void input();【要求】完成以上所有成员函数并进行检查第二部分 关于类和对象的进一步讨论1.请你设计一个程序,在这个程序能够完成这样的任务:a.能够显示不带参数以及带参数的构造函数的调用情况b.能够显示重载构造函数的调用情况c.能够显示带默认参数的构造函数的调用情况d.能够反映构造函数和析构函数的调用顺序2.商店销售某一商品,商店每天公布统一的折扣(discount)。同时允许销售人员在销售时灵活掌握售价(price),在此基础上,对一次购10件以上者,还可以享受9.8折优惠。现已知当天3名销货人员的销售情况为:销货员号(num)销货件数(quantity)销货单价(price)101523.51021224.5610310021.5a.实现描述超市的的类Suppermacket类,记录系统中现有商品(用指针实现),定义增加商品的函数Append,删除商品的函数Delete,查询商品的函数Query,并显示查询结果; b.定义商品类Goods,具有商品名称Name,商品价格Price,商品数量number等属性,操作Sale(销售商品,余额不足时给予提示)、Add(商品上架操作)和ShowMe(显示商品信息)。 重载输入“”操作符。 c.编写main函数,测试以上所要求的各种功能,即可以根据菜单命令增加、删除和查询商品,以及商品销售和商品上架的操作。第三部分 运算符重载1定义复数的类Complex并测试其功能:a. 复数由实部、虚部两个部分组成,在类的定义中应包含保存这两部分信息的内容。b. 在类中定义构造函数,使用户能够在构造对象的同时为对象赋初值。c. 在类中定义复数的加法、减法、乘法三个二元操作符来完成复数间的加、减、乘的功能。d. 通过重载“”,使得Complex类的对象能够显示其自身信息。e. 通过显示定义一个成员函数完成对象的赋值操作,使用户能够对Complex类的对象进行赋值。f. 编写一段主程序(main函数),使用户能够通过这段主程序输入复数并进行复数的计算。2编程把加法运算符重载为友员函数,实现复数与实数的重载。第四部分 继承与派生1.有一个类,如下代码,现要求以其为基类,再写一个类,采用继承的方式实现程序的加减乘除运算。class mathpublic:protected:float a;float b;private:math()math(float x,float y)a=x;b=y;void geta()couta:aendl;void getb()coutb:bendl;void plus()float z;z=a+b;coutzendl;void minus()float z;z=a-b;coutzendl;2.设计一个大学人员管理的程序。该程序可以管理大学的几类人员:学生(student),教员(faculty),教授(professor)。这个程序所解决的问题是一个我们比较熟悉的真实世界中的问题。(用到了虚基类,person)Person类是所建立的类体系的公共的根,它封装着这个问题中各类人员的共性。为简化程序,我们只选择在person类中描述人名和年龄。Student类是对一类具体对象的描述,我们在这里只关心一个学生的专业方向。Faculty类描述教员,我们关心这类人员在哪个系任教。Professor类描述教授,教授是一个特殊的教员,我们不但关心他所任教的系,同时也关心他是不是博士生导师。所以我们从faculty类派生出professor类,在professor类中增加faculty 类所不具备的特征。在职攻读学位的学生既是一个学生,又具有教员的属性,所以studentFacult类应该从student类和faculty类派生。下图显示出各个类的继承关系。请完成。personstudentfacultystudentFacultyprofessor第五部分 多态性与虚函数1.输入圆柱体的底圆半径和圆柱体的高,求出底面面积、表面积、及其体积。要求用虚函数实现。第六部分 输入输出流目的:通过练习能够掌握C+的流类以及会使用流类来定义对象。1.编写一个程序统计文件A.TXT文件的字符个数。2.编写一个程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论