⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 银行账户类.cpp

📁 我学习C++ Primer Plus过程中写下的课后作业的编程代码
💻 CPP
字号:
/*
1.定义一个类来表示银行账户.数据成员包括储户姓名、账号、和存款。
成员函数执行如下操作:

  创建对象、并将其初始化。
  显示储户姓名、账号和存款。
  存入参数指定的存款。
  取出参数指定的款项。
  用一个小程序来演示所有的特性
*/

#include <iostream>
#include <cstring>
class bank
{
private:
	enum { MAX = 30, LIMIT = 20};
	char   name[MAX];
	char   number[LIMIT];
	double money;
public:	
	bank();												 // default ctor
	bank(const char * na , const char * nu, double m);	 // ctor
	void   showInfo()const;					 // 显示储户姓名、账号和存款
	void   deposit (double Money);			 // 存入参数指定的存款
	double withdraw(double Money);			 // 取出参数指定的款项
};
int main()
{
	using namespace std;
	cout<<"默许账号为:"<<endl;
	bank no_name;									// 空账号
	no_name.showInfo();		
	cout<<"我的账号为:"<<endl;
	bank Ldm("liu dongming","888 888 888",5555);    // 建立账号
	Ldm.showInfo();
	while(1)
	{
		cout<<"请输入您要--存款--的金额:";			// 存款
		double inMoney;
		cin>>inMoney;
		while(!cin)
		{
			cin.clear();
			if(cin.get() != '\n')
				continue;
			cout<<"请输入正确的数据: ";
			cin>>inMoney;
		}
		Ldm.deposit(inMoney);					   
		Ldm.showInfo();
		bool ok;								// 记录是否成功取款
		int  time = 0;							// 最多3次后退出取款
		do										// 取款
		{
			cout<<"请输入您要--取款--的金额:";            
			double outMoney;
			cin>>outMoney;
			while(!cin)
			{
				cin.clear();
				if(cin.get() != '\n')
					continue;
				cout<<"请输入正确的数据: ";
				cin>>outMoney;
			}
			ok = (bool)Ldm.withdraw(outMoney);
			++time;
		}while(!ok && time <3);	// 如果没取款成功,继续要求取款金额,直到取了三次					
		Ldm.showInfo();
	}
	return 0;
}

bank::bank()					// 默认构造函数
{
	strcpy(name,"no name");
	strcpy(number,"000 000 000");
	money = 0.0;
}

bank::bank(const char * na, const char * nu, double m )		// 构造函数
{
	strncpy(name,na,MAX-1);
	name[MAX-1] = '\0';
	strncpy(number,nu,LIMIT-1);
	number[LIMIT-1] = '\0';
	money = m;
}

void bank::showInfo()const									 // 显示账户
{
	std::cout<<"name:   "<<name<<std::endl;
	std::cout<<"number: "<<number<<std::endl;
	std::cout<<"money:  "<<money<<std::endl;
}

void bank::deposit(double Money)			 // 存款
{
	if(Money>=0)
	{
	money += Money;
	std::cout<<"You have deposit "<<Money<<" $\n";
	std::cout<<"Now your surplus'money "<<money<<" $\n";
	}
	else
		std::cout<<"The money can't be nagative!"<<std::endl;
}

double bank::withdraw(double Money)		     // 取款
{
	using std::cout;
	using std::cerr;
	if(money >= Money && Money>=0 )
	{
		money -=Money;
		cout<<"You have withdraw "<<Money<<" $\n";
		cout<<"Now your surplus'money "<<money<<" $\n";
		return money;
	}
	else
	{
		cerr<<"Sorry! You have no enough money for withdraw\n";
		return 0.0;
	}
}




⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -