C++面向对象程序设计教程(第3版)—-陈维兴,林小茶课后习题答案 下载本文

.

{

if(q < 1 || q > 5) {

qu = 1; } else {

qu = q; }

price = 10 * qu; }

int book::mult() {

return qu * price; } int main() {

book books[5] = {1,2,3,4,5}; for(int i = 0; i < 5; i++) {

cout << books[i].mult() << \ \;

精选范本

.

} }

3.34 修改3.33,通过对象指针访问对象数组,使程序以相反的顺序显示每个对象数组元素的qu*price值。

class book { private: int qu, price; public:

book(int qu); int mult(); };

book::book(int q) {

if(q < 1 || q > 5) {

qu = 1; } else

精选范本

{

qu = q; }

price = 10 * qu; }

int book::mult() {

return qu * price; } int main() {

book books[5] = {1,2,3,4,5}; book *p = books; p += 4;

for(int i = 0; i < 5; i++) {

cout << p->mult() << \ \; --p; } return 0; }

.

精选范本

.

3.35 构建一个类Stock,含字符数组stockcode[]及整型数组成员quan、双精度型数据成员price。构造函数含3个参数:字符数组na[]及q、p。当定义Stock的类对象时,将对象的第一个字符串参数赋给数据成员stockcode,第2和第3个参数分别赋给quan、price。未设置第2和第3个参数时,quan的值为1000,price的值为8.98.成员函数print没有形参,需使用this指针,显示对象数据成员的内容。编写程序显示对象数据成员的值。

#include using namespace std;

class Stock { private:

char stockcode[25]; int quan; double price; public:

Stock(char na[], int q = 1000, double p = 8.98); Stock(char na[]); void print(); };

Stock::Stock(char na[], int q = 1000, double p = 8.98) {

精选范本