| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2235 人关注过本帖
标题:用了gerchar(),屏幕还是一闪而过怎么办(自动取款机的程序)
只看楼主 加入收藏
Angel乖乖
Rank: 1
等 级:新手上路
帖 子:70
专家分:3
注 册:2011-5-14
结帖率:100%
收藏
已结贴  问题点数:0 回复次数:30 
用了gerchar(),屏幕还是一闪而过怎么办(自动取款机的程序)
程序代码:
#include<iostream>
#include<string.h>
#define error 0
#define succee 1
class ACCOUNT
{
private:
    unsigned long ID;
    unsigned int password;
    char name[20];
    int ballance;
public:
    ACCOUNT(unsigned long id,unsigned int pw,char *n,int a);

    int cunkuan(unsigned long id,unsigned int pw,int a);
    int qukuan(unsigned long id,unsigned int pw,int a);
    int chaxun(unsigned long id,unsigned int pw);
    int check(unsigned long id,unsigned int pw);
};
ACCOUNT::ACCOUNT(unsigned long id,unsigned int pw,char *n,int a)
{
    ID=id;password=pw;
    strcpy(name, n);
    ballance=a;

}
int ACCOUNT::cunkuan(unsigned long id,unsigned int pw,int a)
{
    if(check(pw,id))
        return error;
    else
    {
        ballance+=a;
        return succee;
        cout<<"您的余额为:"<<ballance<<endl;
    }
}
int ACCOUNT::qukuan(unsigned long id,unsigned int pw,int a)
{
    if(check(pw,id))
        return error;
    else
    {if(ballance<a)
    cout<<"您的余额已不足!"<<endl;
    else
        ballance-=a;
    }
}
int ACCOUNT::chaxun(unsigned long id,unsigned int pw)
{
    if(check(pw,id))
        return ballance;
    else
        return error;
}
int ACCOUNT::check(unsigned long id,unsigned int pw)
{
    if(id==ID&&pw==password)
        return succee;
    else
        return error;
}
void main()
{
    ACCOUNT A(1005170228,123456,"Angel",500);
    int c;
    unsigned long id;
    unsigned int pw;
    int a;
    cout<<"欢迎使用"<<endl;
    cout<<"-----------------------"<<endl;
    cout<<"<1>存款\n<2>取款\n<3>查询余额\n<4>结束"<<endl;
    cout<<"请选择:"<<endl;
    cin>>c;
    getchar();
    while(c=!4)
    {
        switch(c)
        {
        case 1:
            cout<<"请输入账号:"<<endl;
            cin>>id;
            cout<<"请输入密码:"<<endl;
            cin>>pw;
            cout<<"请输入存款余额:"<<endl;
            cin>>a;
            if(A.cunkuan(id,pw,a))
            {
                cout<<"操作成功,您目前的余额为 "<<endl;
       
                cout<<A.chaxun(id,pw)<<""<<endl;
            }
            else
                cout<<"操作失败!"<<endl;
            getchar();
            break;
        case 2:
            cout<<"请输入账号:"<<endl;
            cin>>id;
            cout<<"请输入密码:"<<endl;
            cin>>pw;
            cout<<"请选择取款余额:\t<1>100\t<2>200\t<3>500\t<4>1000"<<endl;
            cin>>a;
            if(A.qukuan(id,pw,a))
            {
                cout<<"操作成功,您目前的余额为 "<<endl;
                cout<<A.chaxun(id,pw)<<""<<endl;
            }
            else
                cout<<"操作失败!"<<endl;
            getchar();
            break;
        case 3:
            cout<<"请输入账号:"<<endl;
            cin>>id;
            cout<<"请输入密码:"<<endl;
            cin>>pw;
            if(A.check(id,pw))
                cout<<"您目前的余额为 "<<endl;
            cout<<A.chaxun(id,pw)<<""<<endl;
            getchar();

            break;
        }
        cout<<"请继续选择"<<endl;
        cout<<"<1>存款\n<2>取款\n<3>查询余额\n<4>结束"<<endl;
    }
    cout<<"谢谢使用!"<<endl;
    getchar();

}
我用的是VS2008
不知道是怎么回事,执行时屏幕总是一闪而过
谁来帮帮我啊。。。
搜索更多相关主题的帖子: 怎么办 password 取款机 
2011-11-18 11:46
亦尘
Rank: 1
等 级:新手上路
帖 子:21
专家分:3
注 册:2011-11-16
收藏
得分:1 
用两个就可以啦
2011-11-18 11:50
Angel乖乖
Rank: 1
等 级:新手上路
帖 子:70
专家分:3
注 册:2011-5-14
收藏
得分:0 
who know
哪里出了问题啊
没有人吗
2011-11-18 11:51
Angel乖乖
Rank: 1
等 级:新手上路
帖 子:70
专家分:3
注 册:2011-5-14
收藏
得分:0 
回复 2楼 亦尘
不行。。。
2011-11-18 11:53
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
收藏
得分:2 
按Ctrl+F5.

我们都在路上。。。。。
2011-11-18 11:53
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
收藏
得分:1 
或是在 cout<<"谢谢使用!"<<endl;
下断点,调试运行。

我们都在路上。。。。。
2011-11-18 11:54
Angel乖乖
Rank: 1
等 级:新手上路
帖 子:70
专家分:3
注 册:2011-5-14
收藏
得分:0 
回复 6楼 hellovfp
不行
2011-11-18 11:57
Angel乖乖
Rank: 1
等 级:新手上路
帖 子:70
专家分:3
注 册:2011-5-14
收藏
得分:0 
回复 6楼 hellovfp
你试着帮我运行一下
程序有错吗?
2011-11-18 11:58
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
收藏
得分:5 
错误很多,所以你不能运行。
#include <iostream>
#include <string>
#include <cstdio>
#define error 0
#define succee 1
using namespace std;
class ACCOUNT
{
private:
    unsigned long ID;
    unsigned int password;
    string name;
    int ballance;
public:
    ACCOUNT(unsigned long id,unsigned int pw,string n,int a);

    int cunkuan(unsigned long id,unsigned int pw,int a);
    int qukuan(unsigned long id,unsigned int pw,int a);
    int chaxun(unsigned long id,unsigned int pw);
    int check(unsigned long id,unsigned int pw);
};
ACCOUNT::ACCOUNT(unsigned long id,unsigned int pw,string n,int a)
{
    ID=id;
    password=pw;
    name = n;
    ballance=a;

}
int ACCOUNT::cunkuan(unsigned long id,unsigned int pw,int a)
{
    if(check(pw,id))
        return error;
    else
    {
        ballance+=a;
        return succee;
        cout<<"您的余额为:"<<ballance<<endl;
    }
}
int ACCOUNT::qukuan(unsigned long id,unsigned int pw,int a)
{
    if(check(pw,id))
        return error;
    else
    {
        if(ballance<a)
            cout<<"您的余额已不足!"<<endl;
        else
            ballance-=a;
    }
    return succee;
}
int ACCOUNT::chaxun(unsigned long id,unsigned int pw)
{
    if(check(pw,id))
        return ballance;
    else
        return error;
}
int ACCOUNT::check(unsigned long id,unsigned int pw)
{
    if(id==ID&&pw==password)
        return succee;
    else
        return error;
}
int main()
{
    ACCOUNT A(1005170228,123456,"Angel",500);
    int c;
    unsigned long id;
    unsigned int pw;
    int a;
    cout<<"欢迎使用"<<endl;
    cout<<"-----------------------"<<endl;
    cout<<"<1>存款\n<2>取款\n<3>查询余额\n<4>结束"<<endl;
    cout<<"请选择:"<<endl;
    cin>>c;
    getchar();
    while(c!=4)
    {
        switch(c)
        {
        case 1:
            cout<<"请输入账号:"<<endl;
            cin>>id;
            cout<<"请输入密码:"<<endl;
            cin>>pw;
            cout<<"请输入存款余额:"<<endl;
            cin>>a;
            if(A.cunkuan(id,pw,a))
            {
                cout<<"操作成功,您目前的余额为 "<<endl;

                cout<<A.chaxun(id,pw)<<"元"<<endl;
            }
            else
                cout<<"操作失败!"<<endl;
            getchar();
            break;
        case 2:
            cout<<"请输入账号:"<<endl;
            cin>>id;
            cout<<"请输入密码:"<<endl;
            cin>>pw;
            cout<<"请选择取款余额:\t<1>100\t<2>200\t<3>500\t<4>1000"<<endl;
            cin>>a;
            if(A.qukuan(id,pw,a))
            {
                cout<<"操作成功,您目前的余额为 "<<endl;
                cout<<A.chaxun(id,pw)<<"元"<<endl;
            }
            else
                cout<<"操作失败!"<<endl;
            getchar();
            break;
        case 3:
            cout<<"请输入账号:"<<endl;
            cin>>id;
            cout<<"请输入密码:"<<endl;
            cin>>pw;
            if(A.check(id,pw))
                cout<<"您目前的余额为 "<<endl;
            cout<<A.chaxun(id,pw)<<"元"<<endl;
            getchar();

            break;
        }
        cout<<"请继续选择"<<endl;
        cout<<"<1>存款\n<2>取款\n<3>查询余额\n<4>结束"<<endl;
    }
    cout<<"谢谢使用!"<<endl;
    getchar();
    return 0;
}

我们都在路上。。。。。
2011-11-18 12:16
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
收藏
得分:5 
上面只是简单的改错,
头部
#include <string>
#include <cstdio> // getchar()函数申明所需头文件
using namespace std;  //cout , cin的使用必须使用名字空间std。
不要使用自定义的error, success值,C++中有bool变量,直接返回true ,false代表正确或是错误。
成员变量name类型改成了string.构造函数中char *n, 改成了string n,在C++中请使用string字符串类,而不要使用字符串指针。

while(c=!4)改成while(c!=4),自己粗心打错了。

其它的运行错误,没有看了,自己调试吧。


[ 本帖最后由 hellovfp 于 2011-11-18 12:24 编辑 ]

我们都在路上。。。。。
2011-11-18 12:22
快速回复:用了gerchar(),屏幕还是一闪而过怎么办(自动取款机的程序)
数据加载中...
 
   



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

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