天天看點

c語言模拟atm機程式 密碼怎麼用*輸出,用C語言控制台程式模拟一個ATM 機存取款流程...

//

// main.c

//

// Created by lanqs on 14/12/17.

// Copyright (c) 2014年 All rights reserved.

//

#include

#include "haha.h"

struct Zhanghu{

char name[20];//姓名

int num;//賬戶

int password;//密碼

double balance;//餘額

};

struct Zhanghu A = {"小王",2012,123456,10000};//A

struct Zhanghu B = {"小李",2014,654321,20000};//B

struct Zhanghu C = {"銀行",1000,111111,100000};//C 銀行賬戶ATM機子(裡面有錢。。。銀行的錢。。。)

int main(int argc, const char * argv[]) {

#pragma mark - 用C語言控制台程式模拟一個ATM 機存取款流程。

// 要求:

// 1)賬戶基本資訊結構體(包括:姓名、賬戶、密碼、餘額等基本資訊)。

// 2)輸入使用者名密碼登入(密碼使用者名自定義并且提示相關錯誤資訊)。

// 3)登入成功後有:檢視餘額、取款、存款、修改密碼 、登出菜單,并實作相關功能。

// 附加:

// 4)建立兩個使用者A(初始資金1W)、B(初始資金2W),并添加一個銀行賬戶(總資金10W,A、B使用者資金計入在内)處理資金平衡,并記錄相關記錄檔。

// 注:1)排版及代碼規範;

// 2)需要添加注釋

// 3)功能完整性

// 4)增強使用者體驗

//

//

int num,password;

// int flag = 0;//a,b登陸成功的标示

// int flag1 = 0; // 進入列印憑條的标示

int a;//選擇

double qukuan = 0; //額,這個就是存取款變量

//----------------因為是取款機,是以程式是死循環

//------------功能實作

//------------輸入賬号密碼登陸(密碼修改後使用新密碼登陸)

//------------檢視餘額(每次操作後會更新)

//------------取款(不能取超過機子的錢,也不能透支)

//------------存款(随便存)

//------------修改密碼,同上

//------------退出登陸(退出了這個操作機子的人,等待下一個繼續操作這台ATM機子)

//------------輸入内部的銀行賬戶可以登陸檢視A,B的資訊,還有ATM機子的餘額情況

//------------初始密碼都在上面。。。

//------------ -_-||要停止運作請拆電池。。。

while (1) {

printf("程式一直運作中。。。\n");

printf("請輸入賬号和密碼:");

scanf("%d%d",&num,&password);

if (num == A.num && password == A.password) {

int kongzhi = 1; //a,b中的控制

printf("a登陸成功!");

while (kongzhi) {

//a的資訊

printf("\n1.檢視餘額\n");

printf("2.取款\n");

printf("3.存款\n");

printf("4.修改密碼\n");

printf("5.登出\n");

scanf("%d",&a);//輸入選擇資訊

switch (a) {

case 1:

//1.檢視餘額

printf("餘額為:%.2lf",A.balance);

printf("\n-----------------------\n");

break;

case 2:

printf("請輸入你要取款的金額:");

scanf("%lf",&qukuan);

//取款這裡不能為0啊

if (qukuan <= A.balance) {

A.balance = A.balance - qukuan;

C.balance = C.balance - qukuan; //取款機的餘額減少

printf("取款成功!");

}else if (qukuan > C.balance){

printf("取款機餘額不足!");

}

else {

printf("餘額不足!");

}

printf("\n-----------------------\n");

break;

case 3:

printf("請輸入你要存款的金額:");

scanf("%lf",&qukuan);

A.balance = A.balance +qukuan;

C.balance = C.balance +qukuan; //取款機裡面的前增加

printf("\n存款成功!\n");

printf("\n-----------------------\n");

break;

case 4:

printf("請輸入新的密碼:");

scanf("%d",&password);

A.password = password;

printf("\n密碼修改成功!\n");

printf("\n-----------------------\n");

break;

case 5:

printf("你已經退出了!");

printf("\n-----------------------\n");

kongzhi = 0;

break;

default:

printf("輸入錯誤!");

printf("\n-----------------------\n");

break;

}

}

continue;

}else if (num == B.num && password == B.password){

int kongzhi = 1; //a,b中的控制

while (kongzhi) {

printf("b登陸成功");

//b的資訊

printf("\n1.檢視餘額\n");

printf("2.取款\n");

printf("3.存款\n");

printf("4.修改密碼\n");

printf("5.登出\n");

scanf("%d",&a);//輸入選擇資訊

switch (a) {

case 1:

//1.檢視餘額

printf("餘額為:%.2lf",B.balance);

printf("\n-----------------------\n");

break;

case 2:

printf("請輸入你要取款的金額:");

scanf("%lf",&qukuan);

if (qukuan <= B.balance) {

B.balance = B.balance - qukuan;

C.balance = C.balance - qukuan;//取款機裡面的錢減少

printf("取款成功!");

}else if (qukuan > C.balance){

printf("取款機餘額不足!");

}

else {

printf("餘額不足!");

}

printf("\n-----------------------\n");

break;

case 3:

printf("請輸入你要存款的金額:");

scanf("%lf",&qukuan);

B.balance = B.balance +qukuan;

C.balance = C.balance +qukuan; //取款機裡面的前增加

printf("\n存款成功!\n");

printf("\n-----------------------\n");

break;

case 4:

printf("請輸入新的密碼:");

scanf("%d",&password);

B.password = password;

printf("\n密碼修改成功!\n");

printf("\n-----------------------\n");

break;

case 5:

printf("你已經退出了!");

printf("\n-----------------------\n");

kongzhi = 0 ;

break;

default:

printf("輸入錯誤!");

printf("\n-----------------------\n");

break;

}

}

continue;

/

}else if(num == C.num && password == C.password){

printf("銀行賬戶登陸成功!\n");

printf("ATM機的餘額%.2lf\n",C.balance);

printf("戶主:%s,賬号%d, 餘額:%.2lf\n",B.name,B.num,B.balance);

printf("戶主:%s,賬号%d, 餘額:%.2lf\n",A.name,A.num,A.balance);

continue;

}

else{

printf("你的賬号或者密碼輸入有錯!請重新輸入:\n");

continue;

}

}

return 0;

}