作业与实验答案 3

发布 2020-04-15 22:40:28 阅读 1078

1、定义一个存折类,并派生出信用卡类。存折类可以实现开户、存款、取款和查询余额的。

操作,对存折类:

1)开户:通过构造函数实现,开户必须将账户余额初始化成某个值》0;(2)存款:增加账户余额;

3)取款:减少账户余额,取款金额必须小于余额;(4)查询:显示账户余额。

信用卡类从存折类派生,具有如下功能:

1)两个余额,一个为信用余额,一个为账户余额;

2)开户:通过构造函数实现,开户必须将账户余额初始化成某个值》0,信用余额为12000,对账户余额通过基类构造实现;(3)存款:增加账户余额;

4)取款:减少账户余额,取款金额必须小于帐户余额;(5)查询:显示账户余额,已经消费余额,以及信用余额;(6)消费:减少信用余额;

7)还款:减少账户余额,增加信用余额,还款是,消费余额必须小于账户余额。实例化1个存折对象,以及一个信用卡对象,验证每一个操作过程,试编写一个完整的程序,实现相关功能。程序:

#include using namespace std;class bankbook;

float money;

bankbook::bankbook(float newb){}

if(newb>0)

money=newb;bankbook(float newb);bankbook();

void s**e(float s**eb);

void withdraw(float withdrawb);void showb();

elsecout<<"错误"

void bankbook::s**e(float s**eb){}

void bankbook::withdraw(float withdrawb){}

void bankbook::showb(){

class creditcard:public bankbook

creditcard(){

credit=12000.00;expense=1.00;credit=12000.00;expense=1.00;

cout<<"账户余额为:"

elsecout<<"账户余额不足"

void expense(float expensec);void pay();

private:};

void creditcard::show(){

void creditcard::expense(float expensec){}

void creditcard::pay()

void main()

cout<<"第二张信用卡再次消费1000:"<结果:错误。

第一张存折:账户余额为:100第二张存折:账户余额为:100

在第二张存折中存入50元后:账户余额为:150

在第二张存折中取出100元后:账户余额为:50

在第二张存折中再取出100元:账户余额不足账户余额为:50错误。

第一张信用卡:账户余额为:12000信用余额为:12000消费金额为:1第二张信用卡:账户余额为:12000信用余额为:12000消费金额为:1

第二张信用卡消费1000后:账户余额为:12000信用余额为:11000消费金额为:1001

第二张信用卡还款后:账户余额为:10999信用余额为:12000消费金额为:1

第二张信用卡再次消费1000后:账户余额为:10999信用余额为:

11000消费金额为:1001第二张信用卡还款:账户余额为:

9998信用余额为:12000消费金额为:1

第二张信用卡再次消费1000:账户余额为:9998信用余额为:11000

消费金额为:1001

2、定义一个复数类,数据成员为私有的,有一个构造函数。用重载运算符“-”使之能用。

于复数的减法运算,参加运算的两个运算量可以都是类对象,也可以其中有一个是单精。

度,顺序任意。编程序,分别求两个复数之差,单精度和复数之差。#include <>using namespace std;class complex

complex(double r,double i)

complex operator-(complex &

friend complex operator-( float r, complex &)因为要求顺序任意。

friend complex operator-( complex &,float r );void show();

complex complex::operator-(complex & c2)

complex operator-(float r, complex & c2)

void complex::show()

cout<< void main()

complex c1(3,5),c2(1,2),c3;c3 = c1 - c2; =c1 - 2; =3 - c2;

3、多态性在学校人员信息管理系统中应用。系统描述:学校人员信息管理系统的主要功能是对在校人员的信息资料进行管理。

在校人员包括学生、教师和行政人员。各系将学生的基本资料如姓名、性别、年龄、成绩输入到系统。教师除了具有学生一样的基本资料(姓名、性别、出生年月)外,还需要记录一些与教学工作相关的信息,如所教课程、所属系部、当前职称等。

同样行政人员除了具有学生一样的基本资料(姓名、性别、出生年月)外,还有职务,业绩评级等。系统能够随时输入、显示和查询各类人员的相关信息。

具体要求:1)定义在校人员类为抽象类,规定基本功能。

在主程序,要求只能定义一个类指针,显示所有各类人员的信息。

#include#include <>using namespace std;class base

class student:public base;

teacher::teacher(char*nam,char*s,char*bir,char*cuse,char*de,char*ti):base(nam,s,bir)

void teacher::show();

administrator::administrator(char* nam, char* s, char* bir,char* pos,char* lev):base(nam,s,bir)

void administrator::show(){

void main(){

base *p;

student s1("张三","男","1990-09-05",92);

p=&s1;

p->show();

teacher t1("李四","男","1975-07-21","程序设计","计算机系","教授");p=&t1;

p->show();

administrator a1("王五","男","1968-03-06","主任","优");p=&a1;

p->show();

cout<<"name:"

用函数模板方式设计可以对某种数据类型的两个数之间求最大值,然后用整型数据和字符型数据进行验证。#include using namespace std;template

const t & max(const t & t1,const t & t2){}

void main()~date(){

int seek(t key);t sum();void disply();

template int date::seek(t key);

double b=datedat1(a,9);datedat2(b,6);cout<<"dat1:"

cout<<"8在dat1中的位置:"

cout<<"8.4在dat2中的位置:"<原序列:6 3 8 1 9 4 7 5 28在dat1中的位置:3dat2:

原序列:2.3 6.1 1.5 8.4 6.7 3.88.4在dat2中的位置:4

6、编一个程序拷贝文本文件,在拷贝文件过程中,将所有小写改成大写。#include#includeusing namespace std;void getfile(){

int main(){结果:judyfederer

getfile();return 0;char ch;

ifstream infile("d:\\ofstream outfile("d:\\while(

cout=97&&ch<=122)<

博弈与决策作业3 答案

博弈与决策。平时作业参 3 一 名词解释。1 网络外部性 如果一种产品对消费者的价值会随着其他使用者数量增加而增加,这种产品就具有网络外部性。2 大规模协调博弈 源于网络外部性,假如有成千上万的人在同时进行一次性博弈,那就形成了大规模协调博弈。3 重复博弈 指同样结构的博弈重复许多次,其中的每次博弈...

电机与拖动实验离线作业答案

电机学实验作业。并励直流电机实验。1,简答题。1 改变电枢电压调速,测得数据如下。ua 220 203 192 n 1662 1532 1453 i 0.73 0.70 0.68 请问 测量数据是否正确?为什么?2 并励电动机名牌数据中,ifn的值并未给出,请问如何获得?3 并励电动机名牌数据中电流...

液压与气动作业3答案

1 调速阀是由 和节流阀串联而成的。答 压差式减压阀。2 液压控制阀按其用途可分 阀阀和阀三大类。答 方向控制阀,压力控制阀,流量控制阀。3方向控制阀按其用途可分为 和 两大类。答 单向阀,换向阀。4 如图2 所示,开启压力分别为0.2mpa,0.3mpa,0.4mpa 的三个单向阀实现串联或并联,...