C++程序设计上机题.doc
文本预览下载声明
第一部分 链表相关联系
1.做一个函数fun(int,int)。在主函数中定义两个变量int a,b。请设计一个程序能够反映值传递无法对实参进行改变。
2.做一个函数fun(int ,int )。在主函数中定义两个变量int a,b。请设计一个程序能够反映引用传递对实参的改变。
3.做一个函数fun(int *,int *)。在主函数中定义两个变量int a,b。请设计一个程序能够反映指针传递对实参的改变。
4.定义一个结构体
Struct A
{
int a;
A *p;
};
a.请手动建立一个含有三个元素的链表,链表中所有的元素都是A类型的。
b.请用图来描述你的建表过程。
c.请手动插入一个节点。
d.请手动删除一个节点。
e.请将上述内容改成自动的过程,也就是用循环结构。
f.请做一个查找函数,完成对某个节点的查找。
第一部分 类和对象
集合是具有共同属性(共性)而又能互相区别(个性)的多个成员的汇集起来的整体,构成集合的每个成员称为集合的元素,元素间没有顺序关系。例如:所有的大写英文字母是一个集合,它包括26个元素:A,B,…,Z。不包含任何元素的集合称为空集合。
【要求】自定义一个集合类set,采用数组存放集合的元素。自定义集合运算包括以下操作:
判断元素elem是否为集合set的元素
为集合添加一个元素elem
从集合中删除一个元素elem
复制一个集合,其元素与原集合完全一样
显示集合中的所有元素
求两个集合中相同的元素,即求两个集合的交集
求两个集合中所有的元素,即求两个集合的并集
判断两个集合包含的元素是否完全相同
判断一个集合是否被包含在另一个集合之中,即是否为另一个集合的子集
编程:建立一个分数类。分数类的数据成员包括分子和分母,操作包括约分、通分、加、减、乘、除、求倒数、比较、显示和输入。分类数的定义如下:
class fraction
{
int 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)
101 5 23.5
102 12 24.56
103 100 21.5
a.实现描述超市的的类Suppermacket类,记录系统中现有商品(用指针实现),定义增加商品的函数Append,删除商品的函数Delete,查询商品的函数Query,并显示查询结果;? 定义商品类Goods,具有商品名称Name,商品价格Price,商品数量number等属性,操作Sale(销售商品,余额不足时给予提示)、Add(商品上架操作)和ShowMe(显示商品信息)。 重载输入“”操作符。 编写main函数,测试以上所要求的各种功能,即可以根据菜单命令增加、删除和查询商品,以及商品销售和商品上架的操作。定义复数的类Complex并测试其功能:. 复数由实部、虚部两个部分组成,在类的定义中应包含保存这两部分信息的内容。. 在类中定义构造函数,使用户能够在构造对象的同时为对象赋初值。. 在类中定义复数的加法、减法、乘法三个二元操作符来完成复数间的加、减、乘的功能。. 通过重载“”,使得Complex类的对象能
显示全部