C++编程逻辑讲解step by step:存折和信用卡类。

题目

存折和信用卡类,信用卡是一种存折,可以透支,可以存款。

代码

cpp 复制代码
#include<iostream>
#include<string>
using namespace std;
class passbook
{public:
passbook(string nam,int n,float m)
{name=nam;
num=n;
balance=m;
}
void get_value()
{cin>>name>>num>>balance;}
void display()
{cout<<name<<" "<<num<<" "<<"余额:"<<balance<<" ";}
void deposit();
void withdraw();
protected:
	string name;
	int num;
	float balance;
	};
	void passbook::deposit()
	{
		float sav;
		cout<<"存入金额:";
		cin>>sav;
	balance=balance+sav;
	}
	void passbook::withdraw()
	{
		float withdraw;
		int i;
		cout<<"取款金额:";
		
		for(i=0;i<2;i++)
		{cin>>withdraw;
	if(balance-withdraw<0)
	{cout<<"余额不足,重新输入"<<endl;
	continue;
	}
	else
	{balance=balance-withdraw;
	}
	}
	}
	
	class credit:public passbook
	{public:
	credit(string nam,int n,float m,float a):passbook(nam,n,m)
	{arrears=a;
	}
	void show()
	{display();
	cout<<"透支:"<<arrears<<endl;
	}
	void out()
	{float sd;
cout<<"取款金额:";
	cin>>sd;
	if(arrears+balance-sd<0)
	{arrears=arrears+balance-sd;
	balance=0;}
	else
	{balance=balance-sd;}
	}
	private:
		float arrears;
	};
	int main()
	{credit studl("小陈",3423132,1000,0);
	studl.show();
	studl.deposit();
	studl.show();
	studl.out();
	studl.show();
	passbook stul2("马云",43842238,100);
	stul2.display();
	stul2.deposit();
	stul2.display();
	stul2.withdraw();
	stul2.display();
	return 0;
	}
相关推荐
幸运小圣几秒前
递归(Recursion)快速上手指南【JS例子】
开发语言·javascript·ecmascript
py有趣7 分钟前
LeetCode算法学习之旋转矩阵
学习·算法·leetcode
三花聚顶<>7 分钟前
310.力扣LeetCode_ 最小高度树_三种方法总结
算法·leetcode·职场和发展
萘柰奈8 分钟前
LeetCode----200.岛屿数量(Medium)
算法·leetcode·职场和发展
宠..10 分钟前
安装 Qt VS Tool 插件
开发语言·qt
MonkeyKing_sunyuhua11 分钟前
量化只支持a8w8和w4a8,其中a8w8和w4a8是什么意思?
人工智能·算法
Mr_WangAndy13 分钟前
C++14新特性_第一章C++语言特性_Lambda初始化捕获,decltype(auto)
c++·c++40周年·lambda初始化捕获·decltype auto
未来之窗软件服务22 分钟前
幽冥大陆(三十九)php二维数组去重——东方仙盟筑基期
android·开发语言·算法·php·仙盟创梦ide·东方仙盟·东方仙盟sdk
DFT计算杂谈25 分钟前
Abinit-10.4.7安装教程
linux·数据库·python·算法·matlab
程序猫.25 分钟前
Java零基础入门:集合进阶(下)
java·开发语言