1、实现描述超市的的类Suppermacket类,记录系统中现有商品(用指针实现),定义增加商品的函数Append,删除商品的函数Delete,查询商品的函数Query,并显示查询结果;
2、定义商品类Goods,具有商品名称Name,商品价格Price,商品数量number等属性,操作Sale(销售商品,余额不足时给予提示)、Add(商品上架操作)和ShowMe(显示商品信息)。 重载输入“>>”操作符。
3、编写main函数,测试以上所要求的各种功能,即可以根据菜单命令增加、删除和查询商品,以及商品销售和商品上架的操作。
(二)
一、(20%)定义复数的类Complex并测试其功能:
1. 复数由实部、虚部两个部分组成,在类的定义中应包含保存这两部分信息的内容。
2. 在类中定义构造函数,使用户能够在构造对象的同时为对象赋初值。
3. 在类中定义复数的加法、减法、乘法三个二元操作符来完成复数间的加、减、乘的功能。
4. 通过重载“<<”,使得Complex类的对象能够显示其自身信息。
5. 通过显示定义一个成员函数完成对象的赋值操作,使用户能够对Complex类的对象进行赋值。
6. 编写一段主程序(main函数),使用户能够通过这段主程序输入复数并进行复数的计算。
二、(30%)二维直角坐标系中图形信息的描述和显示:
1. 定义一个类Point来表示坐标系中点的位置信息。
2. 定义一个基类Shape,在其中定义虚函数show()来显示具体图形信息。
3. 分别定义类来表示坐标系中矩形、圆和三角形的位置信息。在这几个类中通过分层原则利用类Point;利用多态性来实现对各种图形信息的统一输出方式。
4. 编写一段主程序来测试上面定义的类。
三、(50%)栈模板及其实例的使用:
1. 利用类模板实现一个通用的栈模板。要求这个栈模板能够完成一般栈的基本操作(栈元素为基本数据类型,不包括指针、数组以及对象):向栈中压入一个元素(push)、取栈顶元素的值(top)、弹出栈顶元素(pop)、清空栈(empty)、判断栈是否为空(isEmpty)。
2. 编写一段主程序,要求主程序中生成整型、浮点型、字符型的栈实例各一个并分别测试其功能。
说明:这是北京大学计算机应用专业的系统班(业余)2001年10月份的上机考试题,该上机考题只适用于北大系统班的的学生!其他考生可以参考!
(三)
1、定一个基类Mygraph,要求有一个纯虚函数double Area()=0,
2、从基类派生一个圆类Mycircle和一个矩形类Rangleter,并给出Area()实现;重载“>>” ,实现对图形信息的输入;
3、计算圆形的面积和矩形的面积,并显示输出。
(四)
建立一个简单的学校人员管理系统,包括对学生、员工和在职学生(既是员工又是学生)的管理。需要完成如下功能:
1、建立一个SCHOOL类,在其中定义按照姓名增加人员的APPEND函数,删除人员的DELETE的函数和SEARCH的查询函数(以姓名为为准)。
2、建立一个基类PERSON类,要具有姓名和性别的属性,并把输出函数SHOWME()定义为纯虚函数;
3、建立一个员工STAFF类和一个学生类,均由PERSON继承而来。要求可以输出员工类(学生类)对象的属性(姓名、性别和工作证号码(或学生学号),分别写出对SHOWME()函数的具体实现。
4、建立一个在职学生类STAFF_STUDENT类,由员工类和学生类继承而来。写出对SHOWME()函数的具体实现,可以输出对象属性,。
5、重载,实现用CIN为员工类、学生类和在职学生类对象赋值。
6、编写MAIN()主函数,测试上述功能,并以菜单方式实现对各种人员的增加、删除和查询(以姓名为线索)。
(五)
从键盘读入两个字符串,每个串<50个字符
1、 输入输出都要求有提示信息,且提示信息独占一行!
2、 比较两个字符串是否相等,如果输入字符个数相等且相对应位置的字符也相同则输出Yes,否输出NO
3、 如果两个字符串的英文小写字母个数相同,则输出Yes,否输出NO
4、 比较两个字符串长度,十进制输出较大者的长度
5、 生成文件m7.asm,可执行文件为m7.exe
(1,2,5及格。完成1,2,3,5良。完成1,2,3,4,5优。)
(六)
实现一个图形栈,栈的元素为图形(可以是圆形,也可以是矩形)。根据对菜单的选择实现具体图形信息的显示及栈的相关操作。
1、定义一个栈类Stack,它具有栈的大小属性Size(即栈最多可容纳的元素个数),具有对图形元素(可以是圆形,也可以是矩形)的push,pop,top(显示栈顶元素信息)操作。
2、定义一个Element基类,其至少包含一个纯虚函数ShowMe()以显示图形信息(可以是圆形,也可以是矩形的信息),圆形信息为圆心,半径;矩形信息为左上角点,右下角点。
3、定义Element的派生类MyCircle(圆形类)和MyRectangle(矩形类),以实现图形信息的显示。
4、重载输入运算符,使用户能一次性输入图形信息(可以是圆形,也可以是矩形信息)。
5、编一测试程序进行测试。
提示:
class Element
public:
virtual void ShowMe() = 0;
(七)
北大面向对象程序设计上机考试题(9月20日)
文章类型:自学考试
实现一个图形栈,栈的元素为图形(可以是圆形,也可以是矩形)。根据对菜单的选择实现具体图形信息的显示及栈的相关操作。
1、定义一个栈类Stack,它具有栈的大小属性Size(即栈最多可容纳的元素个数),具有对图形元素(可以是圆形,也可以是矩形)的push,pop,top(显示栈顶元素信息)操作。
2、定义一个Element基类,其至少包含一个纯虚函数ShowMe()以显示图形信息(可以是圆形,也可以是矩形的信息),圆形信息为圆心,半径;矩形信息为左上角点,右下角点。
3、定义Element的派生类MyCircle(圆形类)和MyRectangle(矩形类),以实现图形信息的显示。
4、重载输入运算符,使用户能一次性输入图形信息(可以是圆形,也可以是矩形信息)。
5、编一测试程序进行测试。
提示:
class Element
public:
virtual void ShowMe() = 0;
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !