模拟ATM取款机

题目:

    假设一个简单的ATM机的取款过程是这样的:首先提示用户输入密码(pssword),最多只能输入三次,超过三次则提示用户“密码错误,请取卡”结束交易。如果用户密码正确,载体是用户输入金额(amount),ATM机只能输出100元的纸币,一次取钱数要求最低100,最高2000元。如果用户输入的金额符合上述要求,则打印输出用户取的钱数,最后提示用户“交易完成,请取卡”,否则提示用户重新输入金额。假设用户密码是111111。

int main()
{
    char pwd[10];
    int loginSuccess=0;
    int count=1;
    int amount;
    int amountsuccess=1;
    do{
            printf("请输入密码:");
            gets(pwd);
            if(strcmp(pwd,"111111")==0)
            {//这里函数等于0表示正确,取款业务
                do
                {
                    loginSuccess=1;
                    if(amountsuccess)
                        printf("请输入金额:");
                    else
                        printf("您输入的金额不合法,请重新输入");
                    scanf("%d",&amount);
                    if(amount%100==0&&amount<=2000&&amount>=100)
                    {
                         printf("您取走了%d元",amount);
                         amountsuccess=1;
                    }
                    else
                        amountsuccess=0;
                }while(!amountsuccess);//1退出
            }
            else
                count++;
        }while(count<=3&&!loginSuccess);
    if(count>3&&!loginSuccess)
        printf("登录系统失败,请取走您的卡");
    return 0;
}

posted on 2015-01-14 23:27  萌动  阅读(529)  评论(0编辑  收藏  举报