大一下c + +上机实验总目录:大一下c + +上机实验总结目录
1、教材P242程序设计的第1题
定义一个Book(图书)类,在该类定义中包括以下数据成员和成员函数。
数据成员:bookname(书名)、price(价格)和number(存书数量)。
成员函数:display()显示图书的情况;borrow()将存书数量减1,并显示当前存书数量;restore()将存书数量加1,并显示当前存书数量。
在main函数中,要求创建某一种图书对象,并对该图书进行简单的显示、借阅和归还管理。
【解答】
#include <iostream>
using namespace std;
class Book
{
public:
void setBook(char*,double,int);
void borrow();
void restore();
void display();
private:
char bookname[40];
double price;
int number;
};
//在类外定义Book类的成员函数
void Book::setBook(char *name, double pri, int num)
{
strcpy(bookname, name);
price=pri;
number=num;
}
void Book::borrow()
{
if (number==0 )
{
cout << "已没存书,退出!" << endl;
abort(); //结束程序
}
number = number - 1;
cout << "借一次,现存书量为:" << number << endl;
}
void Book::restore()
{
number = number + 1;
cout << "还一次,现存书量为:" << number << endl;
}
void Book::display()
{
cout << "存书情况:" << endl
<< "bookname:" << bookname << endl
<< "price:" << price << endl
<< "number:" << number << endl;
}
int main()
{
char flag, ch;
Book computer;
computer.setBook( "C++程序设计基础" , 32, 10 );
computer.display();
ch = 'y';
while ( ch == 'y' )
{
cout << "请输入借阅或归还标志(b/r):";
cin >> flag;
switch ( flag )
{
case 'b': computer.borrow(); break;
case 'r': computer.restore();
}
cout << "是否继续?(y/n)";
cin >> ch;
}
computer.display();
}
2、(1)教材P234 二、程序练习的第2题;
(2)P236 同步练习6.2的程序练习的第2题(两道题是有联系的)
(1)解答:改写以下程序。要求定义类student,封装三个数据成员和两个成员函数intpt和output,使程序得到相同的运行效果。
#include <iostream>
using namespace std;
struct student