| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 752 人关注过本帖
标题:麻烦看看这个atm机转账功能的cpp
只看楼主 加入收藏
westlifemapl
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-6-13
结帖率:0
收藏
已结贴  问题点数:20 回复次数:9 
麻烦看看这个atm机转账功能的cpp
#include<iostream>
#include<string>
using namespace std;
class Users
{public:
   Users();
   void face();//主界面
   string getname();
   string getpwd();
   int getbalance();//现金
   void readba();//余额查询
   void gep();//存款
   void draw();//取款
   void changepwd();//修改密码
   void transferacc();//转账
private:
    string name;
    int balance;
    string pwd;
};
Users::Users()
{
    name="冯晓东";
    pwd="123456";
    balance=10000;
}

void Users::readba()    //余额查询
{
    cout<<"您的余额为:"<<balance<<"元。"<<endl;
}
void Users::gep() //定义存款
{
    int money;
    cout<<"请输入您的存款金额:"<<endl;
    cin>>money;
    balance+=money;
    cout<<"您已存入"<<money<<"元。"<<endl;
}
void Users::draw()//定义取款
{
    int money;
    cout<<"请输入您的取款金额:"<<endl;
    cin>>money;
    if(money>balance)
    {
        cout<<"您的余额不足,请重新输入。"<<endl;
        return;
    }
    else
    {
       if(money%100!=0)
        {
        cout<<"对不起,您输入的金额有误,请重新输入。"<<endl;
        cin>>money;
        }
      
        balance-=money;
        cout<<"您已取出:"<<money<<"元。"<<endl;
    }
}
void Users::changepwd()//定义修改密码
{
    string n,m,t;
    cout<<"请输入您的密码:"<<endl;
    cin>>n;
    if(n==pwd)
    {
        cout<<"请输入您的新密码(密码长度不小于6位):"<<endl;
        cin>>m;
        cout<<"请再次输入您的新密码:"<<endl;
        cin>>t;
        if(m==t)
        {
            pwd=t;
        }
        else
        {
            cout<<"对不起,您输入的密码不一致,请重新输入:"<<endl;
        }
    }
    else
    {
        cout<<"密码错误!!!"<<endl;
    }
}
void Users::transferacc()//定义转账
{
    string a;
    int money;
    cout<<"请输入您的转账金额:"<<endl;
    cin>>money;
    if(money>balance)
    {
        cout<<"您的余额不足,请重新输入。"<<endl;
        return;
    }
    cout<<"请输入您要转入的帐号:"<<endl;
    cin>>a;
    cout<<"转账成功。"<<endl;
    balance-=money;
}
void Users::face()//主界面
{
    string i;
    cout<<"**************欢迎使用ATM自助取款机**************"<<endl;
    cout<<"请输入您的密码。"<<endl;
    cin>>i;
    while(i!=pwd)
    {
        cout<<"对不起,您输入的密码有错。请重新输入。"<<endl;
        cin>>i;}   
    while(1)
    {int c;
     cout<<"-------------------------------------------------------------------\n";
     cout<<"请选择服务:\n";
     cout<<"【1】提款\t\t【2】存款\n【3】余额查询\t\t【4】修改密码\n【5】转账\t\t【0】退出\n"<<endl;
     cin>>c;  
     switch(c)
     {
      case 0:return;
      case 1:draw();break;
      case 2:gep();break;
      case 3:readba();break;
      case 4:changepwd();break;
      case 5:transferacc();break;
      default:
      cout<<"无效指令!请重新选取!\n";break;
      }
    }
}
int main()
{
    Users U;
    U.face();
    return 0;
}



这是我写的cpp。。。可是转账功能是鸡肋。。。。求助。怎么修改?才能实现真正意义上的转账???
搜索更多相关主题的帖子: void 转账 修改密码 private balance 
2012-06-13 20:10
lonmaor
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:郑州
等 级:版主
威 望:75
帖 子:2637
专家分:6423
注 册:2007-11-27
收藏
得分:0 
你的转账功能至少应该在两个Users对象之间进行吧,声明可以类似于
void Users::transferacc(Users &acc, const int& amount);
从当前对象的balance中减去amount,然后加到acc用户中的balance里面

从不知道到知道,到知道自己不知道,成长的道路上脚步深深浅浅
2012-06-13 20:23
westlifemapl
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-6-13
收藏
得分:0 
回复 2楼 lonmaor
谢谢版主的回复。如果我想要的不是那种内置账户实现这个功能的,该怎么修改?
2012-06-13 20:35
lonmaor
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:郑州
等 级:版主
威 望:75
帖 子:2637
专家分:6423
注 册:2007-11-27
收藏
得分:0 
回复 3楼 westlifemapl
没听懂

从不知道到知道,到知道自己不知道,成长的道路上脚步深深浅浅
2012-06-13 20:57
westlifemapl
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-6-13
收藏
得分:0 
回复 4楼 lonmaor
额,就是,我的意思是,能不能像现实中的atm机那样,账号是随意的,不是我内置好的。
2012-06-13 21:01
lonmaor
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:郑州
等 级:版主
威 望:75
帖 子:2637
专家分:6423
注 册:2007-11-27
收藏
得分:0 
C++大学教程 第五版(C++ how to program 5/E)里面的每章自测题都在完善一个ATM的实例教程,你可以参考一下。主要在建模,我也在初学。

从不知道到知道,到知道自己不知道,成长的道路上脚步深深浅浅
2012-06-13 21:20
westlifemapl
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-6-13
收藏
得分:0 
回复 6楼 lonmaor
额,有pdf吗?或者文档?可以传一个给我吗?
2012-06-13 21:32
lonmaor
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:郑州
等 级:版主
威 望:75
帖 子:2637
专家分:6423
注 册:2007-11-27
收藏
得分:10 
回复 7楼 westlifemapl
百度无所不能,我的好像是在verycd下的。

从不知道到知道,到知道自己不知道,成长的道路上脚步深深浅浅
2012-06-13 21:36
westlifemapl
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-6-13
收藏
得分:0 
回复 8楼 lonmaor
迅雷加速下载中。。。谢谢版主。
2012-06-13 21:37
xl0607031511
Rank: 2
等 级:论坛游民
帖 子:7
专家分:16
注 册:2012-6-13
收藏
得分:10 
构造函数 Users()要设置吧,不能都为空Users(string a,int b;string c){strcpy(name,a);
     balance=b;strcpy(pwd,c);}这样每建立一个Users对象就输入了一个用户
2012-06-14 00:13
快速回复:麻烦看看这个atm机转账功能的cpp
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.108990 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved