怎样用c语言编写ATM系统

Python018

怎样用c语言编写ATM系统,第1张

真正的ATM系统不可能只是用C语言编写的,它应该是一套完整独立的系统,核心代码更机密,不会轻易的泄露。

C语言可以写一个类似于ATM系统的框架,用以模拟ATM机上的各种操作。

框架代码如下:

    #include<iostream.h>  

    #include<stdio.h>  

       

    int main()   

    {  

        int choice =- 1   

          

        while(1) {  

            printf("请选择\n1.login\t2.regist\n")  

                scanf("%d", &choice)  

            switch(choice) {  

                case 1:  

                     login()  

                     break  

                case 2:  

                     regist()  

                     break  

                default:  

                     printf("输入有误,重新输入\n")  

                     break  

            }  

        }  

        return 0

    }  

      

    void login() {  

        printf("IN LOGIN\n")  

        int flag = -1  

        int X = -1  

        printf("输入账户和密码\n")  

        flag = search()  

        if(falg == 1) {  

            printf("存在,进入主页面\n")  

            X = menu()  

            if(X == 1)  

                 return  

        }  

        else if(flag == 0) {  

            printf("账户或密码错误\n")  

            return       

        }  

    }  

      

    int regist() {  

        printf("IN REGIST\n")  

        return 1  

    }  

      

    int menu() {  

        printf("IN MENU\n")  

        int key = -1  

        int N = -1  

        while(1) {  

            printf("请选择业务:1.refer\t2.deposit\t3.withdraw\t4.transfer\t5.resetPW\t6.退出\n")  

                scanf("%d", &key)  

            switch(key) {  

                case 1:  

                    N = refer()  

                    break  

                case 2:  

                    N = deposit()  

                    break  

                case 3:  

                    N = withdraw()  

                    break  

                case 4:  

                    N = transfer()  

                    break  

                case 5:  

                    N = resetPW()  

                    break  

                case 6:  

                    N = 6  

                    return 1  

                    break  

                default:  

                    printf("输入有误,重新选择:\n")   

                    break  

            }  

            if(N%2 == 0) {  

                printf("Error!\n")  

            }   

        }  

    }  

      

    int refer() {  

        printf("IN REFER\n")  

        //输出余额   

        return 1  

    }  

      

    int deposit() {  

        printf("IN DEPOSIT\n")  

        //存钱   

        return 3  

    }  

      

    int withdraw() {  

        printf("IN WITHDRAW\n")  

        //取钱   

        return 5  

    }  

      

    int transfer() {  

        ptintf("IN TRANSFER\n")  

        //转账   

        return 7  

    }  

      

    int resetPW() {  

        prtintf("IN RESETPW\n")  

        //重设密码   

        return 9  

    }

C语言中浮点型变量指的就是实数变量(存放可以带小数的数据的变量)。实型变量分为两类:单精度型和双精度型。其类型说明符为float单精度说明符,double双精度说明符。实型变量说明的格式和书写规则与整型相同。例如: float x,y// (x,y为单精度实型量)double a,b,c// (a,b,c为双精度实型量)实型常数不分单、双精度,都按双精度double型处理。单精度浮点数:通常占用4个字节(32位)存储空间,其数值范围为-3.4E38~3.4E38,单精度浮点数最多有7位十进制有效数字,单精度浮点数的指数用“E”或“e”表示。如果某个数的有效数字位数超过7位,当把它定义为单精度变量时,超出的部分会自动四舍五入。双精度浮点数:通常占8个字节(64位)内存空间,其数值范围为1.7E-308~1.7E+308。双精度完全保证的有效数字是15位,16位只是部分数值有保证。

#include<stdio.h>

void main()

{

char SelectKey,CreditMoney,DebitMoney

while(1)

{

do{

clrscr()

puts("Please select key:")

puts("1.Quary")

puts("2.Credit")

puts("3.Debit")

puts("4.Return")

SelectKey=getch()

}while(SelectKey!='1'&&SelectKey!='2'&&SelectKey!='3'&&SelectKey!='4')

switch(SelectKey)

{

case'1':

clrscr()

puts("Your balance is $1000")

getch()

break

case'2':

do{

clrscr()

puts("Please select Credit money:")

puts("1.$50")

puts("2.$100")

puts("3.Return")

CreditMoney=getch()

}while(CreditMoney!='1'&&CreditMoney!='2'&&CreditMoney!='3')

switch(CreditMoney)

{

case'1':

clrscr()

puts("Your Credit money is $50,Thank you!")

getch()

break

case'2':

clrscr()

puts("Your Credit money is $100,Thank you!")

getch()

break

case'3':

break

}

break

case'3':

do{

clrscr()

puts("Please select Debit money:")

puts("1.$50")

puts("2.$100")

puts("3.$500")

puts("4.$1000")

puts("5.Return")

DebitMoney=getch()

}while(DebitMoney!='1'&&DebitMoney!='2'&&DebitMoney!='3'&&DebitMoney!='4'&&DebitMoney!='5')

switch(DebitMoney)

{

case'1':

clrscr()

puts("Your Debit money is $50,Thank you!")

getch()

break

case'2':

clrscr()

puts("Your Debit money is $100,Thank you!")

getch()

break

case'3':

clrscr()

puts("Your Debit money is $500,Thank you!")

getch()

break

case'4':

clrscr()

puts("Your Debit money is $1000,Thank you!")

getch()

break

case'5':

break

}

break

case'4':

return

}

}

}

几个小错误而已...比如忘了写双撇号,switch写错了...还有!= 忘了写! 等等.. 以上程序可以运行了