您现在的位置:首页 > 复习资料 > 上机实践 > 正文

北大自考C++程序设计上机实践真题(银行管理系统)

2014-11-06 09:53:00  来源:北京自考热线
#include
#include
class Account
{
private:
 int ID;
 char Name[20];
 float Balance;
public:
 Account(){}
 Account(int id,char *name,float balance)
 {
  ID=id;
  strcpy(Name,name);
  Balance=balance;
 }
 int GetID(){return ID;}
 void Saving();
 void Withdraw();
 void ShowMe();
};
void Account::ShowMe()
{
 cout<  cout<<"********帐号为: "<  cout<<"********姓名为: "<  cout<<"********余额为: "<  return;
}
void Account::Saving()
{
 int money;
 cout<  cin>>money;
 Balance+=money;
 cout<  return;
}
void Account::Withdraw()
{
 int money;
 cout<  cin>>money;
 while(money>Balance){
  cout<   cin>>money;
 }
 Balance-=money;
 cout<  return;
}
class Bank
{
private:
 int NewID;
 int k;
 Account account[20];
public:
 Bank(){NewID=1100;k=0;}
 void Append();
 void Delete();
 void Query();
};
void Bank::Append()
{
 NewID=NewID+2;
 if(k==20){
  cout<<"增加新帐户失败!系统帐户已满!"<  }
 else{
 int id=NewID;
 char name[20];
 float init;
 cout<<"请输入新帐户的姓名: ";cin>>name;
 cout<<"请输入帐户初始金额: ";cin>>init;
 Account newaccount(NewID,name,init);
 account[k]=newaccount;
 k++;
 cout<  newaccount.ShowMe();
 }
 return;
}
void Bank::Delete()
{
 int id;
 cout<<"请输入要删除帐户的帐号: ";
 cin>>id;
 for(int i=0;i   if(account[i].GetID()==id)
   break;
 if(i==k)
  cout<  else{
  for(int j=i;j    account[j]=account[j+1];
  k--;
  cout<  }
 return;
}
void Bank::Query()
{
 int id,chioce;
 cout<<"请输入要查询帐户的帐号: ";
 cin>>id;
 for(int i=0;i   if(account[i].GetID()==id)
   break;
 if(i==k)
  cout<  else{
  account[i].ShowMe();
  while(chioce!=3)
  {
   cout<    cout<<"1.存款    2.取款   3.退出"<    cin>>chioce;
   switch(chioce)
   {
   case 1:
    account[i].Saving();
    break;
   case 2:
    account[i].Withdraw();
    break;
   case 3:
    break;
   }
  }
 }
 return;
}
void main()
{
 Bank bank;
 int chioce;
 cout<  while(chioce!=4)
 {
  cout<   cout<<"1.增加新帐户  2.删除帐户  3.查询帐户  4.退出"<   cin>>chioce;
  switch(chioce)
  {
  case 1:
   bank.Append();
   break;
  case 2:
   bank.Delete();
   break;
  case 3:
   bank.Query();
   break;
  case 4:
   break;
  default:
   break;
  }
 }
 cout< }