fsdfsfw 2021-10-07 16:24 采纳率: 100%
浏览 25
已结题

有没有人可以告诉我这串代码问题在哪?

有没有大 佬解释一下啊,这是我打的ATM取款机的程序


#include<iostream>
#include<string>
using namespace std;
struct user
{
    string name;
    int ID;
    int passport;
    int money=0;
};
struct user a[1000];
void zhuce()//注册
{
    cout << "输入你要注册的10位ID" << endl;
    int iid; cin >> iid;
    a[iid].ID = iid;
    cout << "输入你要注册的密码" << endl;
    int iid1; cin >> iid1;
    a[iid].passport = iid1;
    cout << "输入您的名字" << endl;
    string iid2; cin >> iid2;
    a[iid].name = iid2;
}
void show()//显示用户信息
{
    cout << "输入ID" << endl;
    int id;
    cin >> id;
    flag1:
    cout << "输入密码" << endl;
    int m;
    cin >> m;
    if (m == a[id].passport)
    {
        cout << "欢迎使用" << endl;
        cout << "ID:" << a[id].ID
            << "\nMONEY:" << a[id].money << endl;
    }
    else
    {
        cout << "error" << endl;
        goto flag1;
    }
}
void change1()//修改密码
{
    cout << "输入ID" << endl;
    int id;
    cin >> id;
flag1:
    cout << "输入密码" << endl;
    int m;
    cin >> m;
    if (m == a[id].passport)
    {
        cout << "欢迎使用" << endl;
    flag2:
        cout << "输入密码" << endl;
        int m;
        cin >> m;
        if (m == a[id].passport)
        {
            cout << "输入新密码" << endl;
            int nm;
            cin >> nm;
            a[id].passport = nm;
        }
        else
        {
            cout << "error" << endl;
            goto flag2;
        }
    }
    else
    {
        cout << "error" << endl;
        goto flag1;
    }
}
void cun()//存款
{

    cout << "输入ID" << endl;
    int id;
    cin >> id;
flag1:
    cout << "输入密码" << endl;
    int m;
    cin >> m;
    if (m == a[id].passport)
    {
        cout << "欢迎使用" << endl;
        cout << "ID:" << a[id].ID
            << "\nMONEY:" << a[id].money << endl;
        cout << "请输入存款金额" << endl;
        int nm; cin >> nm;
        a[id].money += nm;
    }
    else
    {
        cout << "error" << endl;
        goto flag1;
    }
}
void ti()//提款
{
    cout << "输入ID" << endl;
    int id;
    cin >> id;
flag1:
    cout << "输入密码" << endl;
    int m;
    cin >> m;
    if (m == a[id].passport)
    {
        cout << "欢迎使用" << endl;
        cout << "ID:" << a[id].ID
            << "\nMONEY:" << a[id].money << endl;
        cout << "请输入存款金额" << endl;
        int nm1; cin >> nm1;
        a[id].money -= nm1;
    }
    else
    {
        cout << "error" << endl;
        goto flag1;
    }
}
int main()
{
    int a;
    while (1)
    {
        cout << "****ATM system****" << endl
            << "****1.查询账户****" << endl
            << "****2.修改密码****" << endl
            << "******3.存款******" << endl
            << "******4.取款******" << endl
            << "****5.注册账户****" << endl
            << "****0.退出系统****" << endl;
        cin >> a;
        switch (a)
        {
        case 1:
            void show();
        case 2:
            void change1();
        case 3:
            void cun();
        case 4:
            void ti();
        case 5:
            void zhuce();
        case 0:
            goto flag;//退出
        default:
            break;
        }
        system("cls");
    }
    flag:
    cout << "Thank you for using";
    return 0;
}
  • 写回答

1条回答 默认 最新

  • CSDN专家-link 2021-10-07 16:26
    关注
    switch (a)
            {
            case 1:
                void show();
            case 2:
                void change1();
            case 3:
                void cun();
            case 4:
                void ti();
            case 5:
                void zhuce();
            case 0:
                goto flag;//退出
            default:
                break;
    
    改为
    switch (a)
            {
            case 1:
                show();
            case 2:
                change1();
            case 3:
                cun();
            case 4:
                ti();
            case 5:
                zhuce();
            case 0:
                goto flag;//退出
            default:
                break;
    
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月15日
  • 已采纳回答 10月7日
  • 创建了问题 10月7日

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器