C语言实现简单的ATM机功能

//6、(****)模拟ATM机取款的过程

//1)、定义两个能保存5个整形数的数组,一个用于保存5个人的卡号,一个用于保存对应卡号的密码。

//2)、判断输入的卡号是否在数组中。

//3)、如果在数组中就让输入密码,判断是否和卡号对应的密码匹配。

//4)、判断密码,24小时内只允许输入3错误的密码。输入错误应该提示还剩下的输入次数,3次都输入错误提示24小时内不允许操作该卡。

//5)、密码正确就让用户对该账户进行相应的操作。

//6)、注意取款的限制。

//7)、上述功能对于一个ATM机是循环的过程,也就是说每个客户都会按照上面的操作进行操作,一个用户操作完成,下一个用户来了还可以进行相应的操作



1 .   command + n 选择 OS X 中的Cocoa Class 新建一对ATM.h 和ATM.m 

2.   .h文件中声明函数如下

                   // 输入账号函数

         void inputUserName();


                 //判断账号是否正确

        void judgeUserName(int userName);


               // 输入密码的函数


         void inputPassword(int index);


             // 判断密码函数


        BOOL isPassword(int index,int password);


          // 判断取钱


       void drawMoney();

3 .    .m文件中实现代码

void inputUserName()

{

    while (1) {

        printf("请输入账号:\n");

        // 定义一个变量来接受账号

        int userName =0;

        scanf("%d", &userName);

        

        // 判断账号是否正确

        judgeUserName(userName);

        

    }

    

}


//判断账号是否正确

void judgeUserName(int userName)

{

    // 账号的数组

    int userNameArray[5] = {111,222, 333,444, 555};

    // 遍历数组进行账号的比对

    for (int i =0; i < 5; i++) {

        if (userNameArray[i] == userName) {

            // 输入正确继续输入密码

           printf("账号正确,请输入密码\n");

            inputPassword(i);

            // 跳出循环

            break;

            

            

        }else{

        // 把所有的元素都比完才提示无此账号

            if(i ==2){

                printf("无此账号\n");

            }

            

        }

    }

    

    

}



// 输入密码的函数


void inputPassword(int index){

    

    int number =3;

    

    while (number !=0) {

        int password =0;

        scanf("%d",&password);

        BOOL result =isPassword(index, password);

        if (result ==YES) {

            // 进行存取操作

            drawMoney();

            break;

        }else{

            if (number ==1) {

                printf("输入错误3次账号被冻结\n");

            }else{

                printf("账号输入错误,您还有%d次机会\n",number - 1);

            }

        }

        

   

        

        number--;

    }

    


}


BOOL isPassword(int index,int password){

    int passwordArray[5] = {112,223, 334,445, 556};

    if (passwordArray[index] == password) {

        returnYES;

    }else{

        returnNO;

    }

}


void drawMoney(){

    while (1) {

        int money =0;

        printf("密码正确,请输入取钱金额:\n");

        scanf("%d", &money);

        if (money >20000) {

            printf("余额不足\n");

        }else{

            printf("成功取出%d",money);

            break;

        }

    

    }

}


4 .  在主函数中调用(main.m)


inputUserName();







你可能感兴趣的:(c语言基础,ios入门)