实验2 类与对象(1)(1)

更新时间:2023-10-24 21:41:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验2 类与对象

一、实验目的

(1)掌握类的声明和使用。 (2)掌握类的声明和对象的声明。 (3)观察构造函数和析构函数的执行过程

二、实验内容及步骤

1.定义一个Book(图书)类,在该类定义中包括:

数据成员: bookname(书名)、price(价格)和number(存书数量);

成员函数: display()显示图书的情况;borrow()将存书数量减1,并显示当前存书数量;restore()将存书数量加1,并显示当前存书数量。

在main函数中,要求创建某一种图书对象,并对该图书进行简单的显示、借阅和归还管理。将程序补充完整。

#include #include #include class Book { public:

void setBook(char*,float,int); };

//在类外定义Book类的成员函数

void Book::setBook(char *name, float pri, int num) { price=pri; number=num; }

void Book::borrow() { if ( )

1

void borrow(); void restore(); void display(); char bookname[40]; float price; int number;

private:

{ cout << \已没存书,退出!\

abort();//中止当前的过程,返回一个错误代码。 }

number = number - 1;

cout << \借一次,现存书量为:\}

void Book::restore() { number = number + 1;

cout << \还一次,现存书量为:\}

void Book::display()

{ cout << \存书情况:\

<< \ << \ << \}

void main() { char flag, ch; Book computer;

computer.setBook( \程序设计基础\ computer.display(); ch = 'y'; while ( ch == 'y' )

{ cout << \请输入借阅或归还标志(b/r):\ cin >> flag; switch ( )

{ case 'b': computer.borrow(); break; case 'r': computer.restore(); }

cout << \是否继续?(y/n)\ cin >> ch;

}

computer.display(); }

2.下列代码使用结构类型表示复数,输入两个复数,可以选择进行复数的+、-、×或÷运算,并输出结果,请设计复数类,实现+、-、×或÷运算并在主函数中使用复数对象进行测试。

2

#include #include struct complex {

float re,im; }; void main()

{ complex a,b,c; char oper;

cout << \输入复数a的实部和虚部: \ cin >> a.re >> a.im;

cout << \输入复数b的实部和虚部:\ cin >> b.re >> b.im; cout << \输入运算符: \ cin >> oper; switch ( oper )

{ case '+': c.re=a.re+b.re; c.im=a.im+b.im; break; case '-': c.re=a.re-b.re; c.im=a.im-b.im; break; case '*': c.re=a.re*b.re-a.im*b.im;

c.im=a.im*b.re+a.re*b.im; break;

c.im=(a.im*b.re-a.re*b.im)/(b.re*b.re+b.im*b.im);

break;

case '/': c.re=(a.re*b.re+a.im*b.im)/(b.re*b.re+b.im*b.im);

default: cout << \ }

cout << setiosflags( ios::showpos ); cout << c.im << \ return; }

return;

cout << \

3.设计并测试一个名为Rectangle的矩形类,其属性为矩形的左上角与右下角两个点的坐标,能计算矩形的长,宽,周长和面积。

3

本文来源:https://www.bwwdw.com/article/ad92.html

Top