欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語言編程銀行ATM存取款系統(tǒng)實現(xiàn)源碼

 更新時間:2021年11月23日 11:25:46   作者:菜鳥一號是我實錘  
這篇文章主要為大家介紹了C語言編程銀行ATM存取款系統(tǒng)實現(xiàn)的源碼示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步

這里使用的運行工具是DEV C++。老鐵們一定要看仔細了。是DEV C++

僅供借鑒:這個是大一時期寫的。大四的時候整理了一下(本人C語言學的也不太好)??隙ê芏嗖蛔愫痛嬖诼┒吹牡胤健H供借鑒、僅供借鑒。

一、課程設計的目的

掌握C語言程序設計的基礎知識、基本理論、原理和實現(xiàn)技術。

二、課程設計的題目

銀行ATM存取款系統(tǒng)

三、設計內容

(主要技術關鍵的分析、解決思路和方案比較等)

銀行ATM存取款系統(tǒng)

銀行ATM存取款系統(tǒng)業(yè)務描述如下:

銀行ATM存取款系統(tǒng)能為用戶提供存款、取款、查詢、轉賬和修改密碼的功能。

為了模擬真實的ATM業(yè)務環(huán)境,本系統(tǒng)必須實現(xiàn)存款、取款、查詢、轉賬、修改密碼以及開戶的功能。

用戶通過開戶業(yè)務在本系統(tǒng)開立銀行賬戶,之后可以通過該銀行賬戶登陸ATM系統(tǒng),在系統(tǒng)中實現(xiàn)存款、取款、查詢賬戶信息、修改密碼的操作。

本系統(tǒng)各個業(yè)務有如下注意點:

(1)登陸系統(tǒng)
用戶登陸之前,必須在登陸界面輸入其銀行賬戶,通過其正確輸入的銀行賬戶登陸系統(tǒng)。
(2)開戶業(yè)務
要使用本系統(tǒng)必須首先執(zhí)行開戶業(yè)務開立新的銀行賬戶,并且將此新開的銀行存儲于文件當中。同時,系統(tǒng)以身份證號碼作為開戶的充分條件,即一個身份證號碼只能開立一次銀行賬戶。
(3)存款業(yè)務
客戶登陸系統(tǒng)后,選擇存款業(yè)務,即可以將輸入的存款金額存入相應的賬戶。
(4)取款業(yè)務
客戶登陸系統(tǒng)后,選擇取款業(yè)務,即可以將輸入的取款金額從相應的銀行賬戶取出,但是取款金額必須大于目前的賬戶余額。
(5)查詢業(yè)務
客戶登陸系統(tǒng)后,可以選擇查詢業(yè)務,查詢賬戶余額。
(6)轉賬業(yè)務
客戶登陸系統(tǒng)后,可以選擇轉賬業(yè)務,進行轉賬。注意的是轉賬的目的賬戶必須是本系統(tǒng)已經(jīng)存在的銀行賬戶。
(7)修改密碼
客戶登陸系統(tǒng)后,可以選擇修改密碼業(yè)務,進行密碼修改。

實現(xiàn)的效果

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

在這里插入圖片描述

源碼

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define N 1000 
#include<conio.h>
struct chuhu{
	char idnum[9];//賬戶 
	char name[10];//姓名
	char idnumber[20];//省份證號
   char password[7];//密碼 
   double cunkuan;//存款 
}hu[N]; 
void date();//顯示當前日期
int a,a1;//主界面選擇變量 
void Flag1();//主界面
void Flag2();//用戶界面 
void Flag3();//用戶功能選擇界面
void zhuce();//注冊 
int yanzheng();//驗證存單號或密碼 
//&&&&&&&&&&&&&&&&&&&&&&&
void qukaun();//取款
void cunkaun();//存款
void display();//查詢
void zhuan();//轉賬 
void xiugai();//密碼修改 
void display();//查找 
//&&&&&&&&&&&&&&&&&&&&&&&&&&
 int A,key;//開戶人數(shù) 
 int i;//控制密碼循環(huán) 
 char ch='y';//是否繼續(xù)注冊 
 double jin;//存的錢 
 int t;
 char id[11],password[7];
int main(){
system("COLOR 0A"); int b;
	Flag1();//引入主界面
	do{

	printf("\n\n\t\t##請輸入你的選擇:");
	scanf("%d",&a); 
	switch(a){
		case 1:{
			zhuce();//zhuce
			Flag1(); 
			break;
		}
		case 2:{
			b=yanzheng();
			fflush(stdin);///好東西,以防跳過數(shù)據(jù)
			Flag2();
			break;
		} 
		case 3:exit(0);break;
		default:printf("\n\n\n\t\t您輸入的數(shù)據(jù)不符合要求!!!\n\n\n\n\n");
		
	}

	}while(1);
}
void Flag1(){
	printf("\n#################################################################################\n");
    printf("\n▓                          * 銀行定期儲蓄管理系統(tǒng)  *                           ▓\n");
    printf("\n#################################################################################\n");
	printf("\n          ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆\n");
	printf("          |◆|******|◆|                                     |◆|******|◆|\n");
	printf("          |◆|******|◆|       ☆ 開戶業(yè)務    請按 1         |◆|******|◆|\n"); 
	printf("          |◆|******|◆|       ☆ 登錄系統(tǒng)    請按 2         |◆|******|◆|\n");
	printf("          |◆|******|◆|       ☆ 退出        請按 3         |◆|******|◆|\n");
	printf("          |◆|******|◆|                                     |◆|******|◆|\n");
	printf("          ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆\n");
	printf("\n#################################################################################\n");	
} 
//********************************************************************************************************************
//用戶界面 
void Flag2(){
       int a,b;//選擇功能的變量
	   do{
	   	printf("\n\n按ENTER鍵進入、返回主菜單 " ) ;
	   	fflush(stdin);
	   	scanf("%c",&ch);
	   	system("cls");//清屏
		   date(); 
    printf("\n#################################################################################\n");
    printf("\n▓                               * 歡迎使用  *                                 ▓\n");
    printf("\n#################################################################################\n");
	printf("\n          ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆\n");	
	printf("          |◆|******|◆|        ☆ 存款業(yè)務       請按 1        |◆|******|◆|\n"); 
	printf("          |◆|******|◆|        ☆ 取款業(yè)務       請按 2        |◆|******|◆|\n");
	printf("          |◆|******|◆|        ☆ 查詢業(yè)務       請按 3        |◆|******|◆|\n"); 
	printf("          |◆|******|◆|        ☆ 轉賬業(yè)務       請按 4        |◆|******|◆|\n");
	printf("          |◆|******|◆|        ☆ 修改密碼       請按 5        |◆|******|◆|\n");
	printf("          |◆|******|◆|        ☆ 退出系統(tǒng)       請按 6        |◆|******|◆|\n"); 
	printf("          |◆|******|◆|                                        |◆|******|◆|\n");
	printf("          ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆\n");
    printf("\n#################################################################################\n");
    printf("\n▓                          *******************************                    ▓\n");
    printf("\n#################################################################################\n");
	printf("\n\n\t\t##請輸入你的選擇:");
	fflush(stdin);
	scanf("%d",&a);
	switch(a){//注冊
		case 1: { system("cls");fflush(stdin);cunkaun();break;//存款			
		} 
		case 2:  {system("cls");fflush(stdin);qukaun();break;//取款	
		}
		case 3: {display();//查詢業(yè)務
			break;
		}
		case 4:{system("cls");fflush(stdin);zhuan();break;//轉賬 		
		}
		case 5: {system("cls");fflush(stdin);xiugai();break;//密碼修改
				}
		case 6: exit(0);
		default:printf("您輸入的選擇有誤,請輸入正確的選項:");	                                            	         
	}
	 } while(1);
} 
//********************************************************************************************************************
//用戶功能選擇界面 
void Flag3(){
	printf("\n\n\t\t##請輸入你的選擇:");
	scanf("%d",&a1);
	switch(a1){
		case 1:printf("存款業(yè)務");break; 
		case 2:printf("取款業(yè)務");break; 
		case 3:printf("查詢業(yè)務");break; 
		case 4:printf("轉賬業(yè)務");break; 
		case 5:printf("密碼修改");break;
		case 6:printf("退出");break;  
	} 
}
//********************************************************************************************************************
//開戶 
void zhuce(){
	FILE *nchuhu=fopen("chuh.txt","r");
	FILE *fchuhu=fopen("chuh.txt","a");
	int i;
	if((nchuhu=fopen("chuh.txt","r"))==NULL) printf("文件無,系統(tǒng)創(chuàng)建\n"); 
	do{
        system("cls");
	date();//顯示當前日期 
	printf("\n\n\t\t請輸入新儲戶的信息:");
	fscanf(nchuhu,"%s\t%s\t%s\t%s\t%lf\n",&hu[A].idnum,&hu[A].name,&hu[A].idnumber,&hu[A].password,&hu[A].cunkuan); 	
	printf("\n\n\t\t儲戶存單:");
	fflush(stdin);
	gets(hu[A].idnum);
	printf("\n\t\t姓名:");
	fflush(stdin);
	gets(hu[A].name);
	printf("\n\t\t儲戶密碼(6位):");
	for(i=0;i<6;i++){
		fflush(stdin);
		hu[A].password[i]=getch();
		printf("*");
	//	scanf("%d",&hu[A].password[i]);
	} 	
	do{
		printf("請輸入省份證號碼(18位):");
		fflush(stdin);
		gets(hu[A].idnumber);
		if(strlen(hu[A].idnumber)!=18)//strlen 代表的意思
		printf("\n\t\t輸入錯誤!\n\t\t身份證請輸入18位數(shù)字或者字母\n");
		for(i=0;i<A;i++)
		if(strcmp(hu[A].idnumber,hu[i].idnumber)==0&&strcmp(hu[A].name,hu[i].name)==0) 
		break;		
		if(i<A) 
		  printf("\n\n\t\t前面已經(jīng)有人用此身份證注冊過\n\n\t\t請重新輸入省份證號:\n");		  	 
	}while((strlen(hu[A].idnumber)!=18)||(strcmp(hu[A].idnumber,hu[i].idnumber)==0)&&(strcmp(hu[A].name,hu[i].name)!=0) );	
	printf("輸入存儲的金額:");
	fflush(stdin);
	scanf("%lf",&hu[A].cunkuan);	
	fprintf(fchuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[A].idnum,hu[A].name,hu[A].idnumber,hu[A].password,hu[A].cunkuan);
	A++;
	printf("是否繼續(xù)是(y)/否(n)?");
	fflush(stdin);
	scanf("%c",&ch); 
	}while(ch=='y'||ch=='Y');
	printf("存入成功!");
//	system("pause");
	system("cls");
	fclose(nchuhu);
	fclose(fchuhu);
}
//********************************************************************************************************************
//驗證存單號或密碼 
int yanzheng(){
	FILE *fchuhu=fopen("chuh.txt","r");
	int count=0;
	char id[9];
	for(i=0;i<=100;i++){
		fscanf(fchuhu,"%s\t%s\t%s\t%s\t%lf\n",&hu[i].idnum,&hu[i].name,&hu[i].idnumber,&hu[i].password,&hu[i].cunkuan);
	}
	do{
		system("cls");
			    printf("\n\n\n\t\t$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\n");
				printf("\t\t|#|                                                          |#|\n");
				printf("\t\t|#|                    ☆☆☆☆☆☆☆☆☆☆                  |#|\n");
				printf("\t\t|#|                    ☆                ☆                  |#|\n");
				printf("\t\t|#|             ☆   存單號或者密碼有誤自動返回   ☆         |#|\n");
				printf("\t\t|#|                    ☆                ☆                  |#|\n");
				printf("\t\t|#|                    ☆☆☆☆☆☆☆☆☆☆                  |#|\n");
				printf("\t\t|#|                                                          |#|\n");
				printf("\t\t$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\n");
		printf("\n\n\n\t\t      請輸入您的存單號:  ");
		scanf("%s",&id);
		printf("\n\n\n\t\t      請輸入您的密碼:  ");
		for(i=0;i<6;i++){
			fflush(stdin);
		password[i]=getch();
			printf("*");
		} 
		password[6]='\0';
		fflush(stdin);
		scanf("c",&ch);
		printf("\n\n\t\t");
		for(i=0;i<99;i++){
			if(strcmp(id,hu[i].idnum)==0&&strcmp(password,hu[i].password)==0){
				fclose(fchuhu);
				return 0;
			}
		}		
	}while(count==0);
	fclose(fchuhu);
	return count;
}
//********************************************************************************************************************
//********************************************************************************************************************
//存款
void cunkaun(){
	FILE *fchuhu=fopen("chuh.txt","r");
	FILE *achuhu=fopen("back.txt","w");
	char id[9];int i;
	if(!fchuhu) printf("不能打開文件:");
	if(!achuhu) printf("不能創(chuàng)建文件");
	for(i=0;i<=100;i++){
	fscanf(fchuhu,"%s\t%s\t%s\t%s\t%lf\n",&hu[i].idnum,&hu[i].name,&hu[i].idnumber,&hu[i].password,&hu[i].cunkuan);
	}	//
	int x=0;
		date();
		printf("\n\n\t\t##請再次輸入并確認存單:");
		scanf("%s",&id);
		for(i=0;i<=100;i++){
			if(strcmp(id,hu[i].idnum)==0){		
		   printf("\n\n"); 
	 		printf("\t\t||================================================================||\n");
	 		printf("\t\t||                           *存款金額*                           ||\n");
	 		printf("\t\t||================================================================||\n");
	 		printf("\t\t||                                                                ||\n");
	 		printf("\t\t||                                                                ||\n");
	 		printf("\t\t||         1、200        2、400        3、600        4、800       ||\n");
	 		printf("\t\t||                                                                ||\n");
	 		printf("\t\t||                                                                ||\n");
	    	printf("\t\t||         5、1000        6、2000        7、4000        8、6000   ||\n");
	 		printf("\t\t||                                                                ||\n");
	 		printf("\t\t||================================================================||\n");
	 		printf("\t\t||================================================================||\n");
	 		printf("\n\n\t\t\t請輸入你的取款金額:");
	 		scanf("%d",&a);
	 		switch(a){
	 			case 1:{jin=200;
	 				 printf("\t\t\t存款%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^存款成功^^^^"); 
			    	hu[i].cunkuan+=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
			    	fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 case 2:{jin=400;
	 			    printf("\t\t\t存款%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^存款成功^^^^");  
			    	hu[i].cunkuan+=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
				    fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 case 3:{
				 	jin=600;
				 	 printf("\t\t\t存款%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^存款成功^^^^");  
			    	hu[i].cunkuan+=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
			    	fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 case 4:{
				 		jin=800;
				  printf("\t\t\t存款%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^存款成功^^^^"); 
			    	hu[i].cunkuan+=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
			    	fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 	 			case 5:{jin=1000;
	 			 printf("\t\t\t存款%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^存款成功^^^^"); 
			    	hu[i].cunkuan+=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
			    	fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 case 6:{jin=2000;
	 			 printf("\t\t\t存款%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^存款成功^^^^"); 
			    	hu[i].cunkuan+=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
				    fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 case 7:{
				 	jin=4000;
				  printf("\t\t\t存款%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^存款成功^^^^"); 
			    	hu[i].cunkuan+=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
			    	fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 case 8:{
				 		jin=6000;
				 	 printf("\t\t\t存款%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^存款成功^^^^"); 
			    	hu[i].cunkuan+=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
			    	fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 default:printf("\n\n\n\t\t\t您的選擇金額不在服務范圍內?。?!\n\n\n\t\t\t請重新選擇業(yè)務:"); 
				 
			 }			
				fclose(fchuhu);
	            fclose(achuhu);
            	system("del chuh.txt");
              	rename("back.txt","chuh.txt");//rename(舊的,新的) 
                break;		
				}
				}
			}
//*******************************************************************************************************************
//取款 
void qukaun(){
	FILE *fchuhu=fopen("chuh.txt","r");
	FILE *achuhu=fopen("back.txt","w");
	int i;
	char id[9];
	if(!fchuhu) printf("不能打開文件:");
	if(!achuhu) printf("不能創(chuàng)建新文件:");
	for(i=0;i<=100;i++){
	fscanf(fchuhu,"%s\t%s\t%s\t%s\t%lf\n",&hu[i].idnum,&hu[i].name,&hu[i].idnumber,&hu[i].password,&hu[i].cunkuan);
	}
	 	date();
	 	printf("\n\n\t\t請再次輸入并確認存單:");
	 	scanf("%s",&id);
	 	for(i=0;i<=99;i++){
	 		if(strcmp(id,hu[i].idnum)==0){
	 	    printf("\n\n"); 
	     	printf("\t\t||================================================================||\n");
	 		printf("\t\t||                           *取款金額*                           ||\n");
	 		printf("\t\t||================================================================||\n");
	 		printf("\t\t||                                                                ||\n");
	 		printf("\t\t||                                                                ||\n");
	 		printf("\t\t||         1、200        2、400        3、600        4、800       ||\n");
	 		printf("\t\t||                                                                ||\n");
	 		printf("\t\t||                                                                ||\n");
	    	printf("\t\t||         5、1000        6、2000        7、4000        8、6000   ||\n");
	 		printf("\t\t||                                                                ||\n");
	 		printf("\t\t||================================================================||\n");
	 		printf("\t\t||================================================================||\n");
	 		printf("\n\n\t\t\t請輸入你的取款金額:");
	 		scanf("%d",&a);
	 		switch(a){
	 			case 1:{jin=200;
	 				printf("\t\t\t取出%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^取款成功^^^^"); 
			    	hu[i].cunkuan-=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
			    	fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 case 2:{jin=400;
	 				printf("\t\t\t取出%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^取款成功^^^^"); 
			    	hu[i].cunkuan-=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
				    fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 case 3:{
				 	jin=600;
				 printf("\t\t\t取出%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^取款成功^^^^");  
			    	hu[i].cunkuan-=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
			    	fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 case 4:{
				 		jin=800;
				 printf("\t\t\t取出%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^取款成功^^^^"); 
			    	hu[i].cunkuan-=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
			    	fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 	 			case 5:{jin=1000;
	 				printf("\t\t\t取出%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^取款成功^^^^"); 
			    	hu[i].cunkuan-=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
			    	fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 case 6:{jin=2000;
	 			printf("\t\t\t取出%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^取款成功^^^^"); 
			    	hu[i].cunkuan-=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
				    fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 case 7:{
				 	jin=4000;
				 printf("\t\t\t取出%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^取款成功^^^^"); 
			    	hu[i].cunkuan-=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
			    	fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 case 8:{
				 		jin=6000;
				 printf("\t\t\t取出%lf元",jin);
			     	printf("\n\n\n\t\t\t^^^^取款成功^^^^"); 
			    	hu[i].cunkuan-=jin;
			    	printf("\n\n\t\t\t$您的余額為:%lf",hu[i].cunkuan);
			    	fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
					break;
				 }
				 default:printf("\n\n\n\t\t\t您的選擇金額不在服務范圍內!??!\n\n\n\t\t\t請重新選擇業(yè)務:"); 				 
			 }
				fclose(fchuhu);
     	        fclose(achuhu);
             	system("del chuh.txt");
             	rename("back.txt","chuh.txt");
				break;
			 }
		 }
}
//********************************************************************************************************************
//轉賬
void zhuan(){
	FILE *fchuhu=fopen("chuh.txt","r+");
	int i;
	char id[9];
	if(!fchuhu) printf("不能打開文件:");

	for(i=0;i<=100;i++){
	fscanf(fchuhu,"%s\t%s\t%s\t%s\t%lf\n",&hu[i].idnum,&hu[i].name,&hu[i].idnumber,&hu[i].password,&hu[i].cunkuan);
	}
	 	date();
	 	printf("\n\n\t\t請輸入轉賬人的存單號:");
	 	scanf("%s",&id);
	 	for(i=0;i<=99;i++){
	 		if(strcmp(id,hu[i].idnum)==0){
	 	      printf("\n\n\t\t請輸入要轉賬的金額:");
			   scanf("%lf",&jin);
			   printf("\n\n\t\t請確認數(shù)目:%lf",jin); 
				 hu[i].cunkuan+=jin;
				 printf("\n\n\n轉賬成功"); 
				 	fprintf(fchuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[A].idnum,hu[A].name,hu[A].idnumber,hu[A].password,hu[A].cunkuan);
				 		fclose(fchuhu);
	fclose(fchuhu);
				 break;
			 }
		 }	
} 
//********************************************************************************************************************
//********************************************************************************************************************
void xiugai(){
	FILE *fchuhu=fopen("chuh.txt","r");
	FILE *achuhu=fopen("back.txt","w");
	int j,i;
	char id[9];
	if(!fchuhu) printf("不能打開文件:");
	if(!achuhu) printf("不能創(chuàng)建新文件:");
	for(i=0;i<=100;i++){
	fscanf(fchuhu,"%s\t%s\t%s\t%s\t%lf\n",&hu[i].idnum,&hu[i].name,&hu[i].idnumber,&hu[i].password,&hu[i].cunkuan);
	}
	 	date();
	 	printf("\n\n\t\t請再次輸入并確認存單:");
	 	scanf("%s",&id);
	 	for(i=0;i<=99;i++){
	 		if(strcmp(id,hu[i].idnum)==0){
	 		printf("請輸入新的密碼:\n");
	 			printf("\n\t\t儲戶密碼(6位):");
	for(j=0;j<6;j++){
		fflush(stdin);
		hu[i].password[j]=getch();
		printf("*");

	} 
				 printf("\n\n\t\t新的密碼:%s\n",hu[i].password);			 
				 printf("\n\n\t\t修改成功"); 
				 	fprintf(achuhu,"%s\t%s\t%s\t%s\t%lf\n",hu[A].idnum,hu[A].name,hu[A].idnumber,hu[A].password,hu[A].cunkuan);
				 		fclose(fchuhu);
	fclose(achuhu);
	system("del chuh.txt");
	rename("back.txt","chuh.txt");
				 break;
			 }
		 }
}
//&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
//查詢信息 
void display(){
	FILE *fchuhu=fopen("chuh.txt","r");
	int i,n=0;
	char fnumb[9];
	system("cls");
	for(i=0;i<=100;i++){
			fscanf(fchuhu,"%s\t%s\t%s\t%s\t%lf\n",&hu[i].idnum,&hu[i].name,&hu[i].idnumber,&hu[i].password,&hu[i].cunkuan);
	}	
	printf("\n\n●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●\n");
	printf("\n\n              ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●                      \n");
	printf("\n\n                              ●●●●●●●●●●●●●●●●●●●●●●●●●●                                              \n");
	printf("\n\n\n\t\t\t\t\t請輸入你的存單號:");
	scanf("%s",&fnumb);
	printf("\n\n\n");
	printf("\t\t\t\t\t您的個人信息如下:");
	printf("\n\n");
	for(i=0;i<=99;i++)
		if(strcmp(fnumb,hu[i].idnum)==0){
				printf("存單號:%s\t姓名:%s\t身份證:%s\t密碼:%s\t存款金額:%lf\n",hu[i].idnum,hu[i].name,hu[i].idnumber,hu[i].password,hu[i].cunkuan);
				n=1;
				fclose(fchuhu);
				system("pause"); 
	            break; 
		}
if(n==0) printf("此賬單不存在?。?!\n");
fclose(fchuhu);

}
//********************************************************************************************************************
void date(){//顯示當前日期
printf("當前日期:");
system("date/t");
printf("當前時間:");
system("time/t"); 
	
}

業(yè)務流程

1、用戶開戶

在這里插入圖片描述

2、登錄流程

在這里插入圖片描述

3、密碼修改

在這里插入圖片描述

以上就是C語言編程銀行ATM存取款系統(tǒng)實現(xiàn)源碼的詳細內容,更多關于C語言實現(xiàn)銀行ATM存取款系統(tǒng)的資料請關注腳本之家其它相關文章!

相關文章

  • 淺談C語言編程中的布爾bool數(shù)據(jù)類型

    淺談C語言編程中的布爾bool數(shù)據(jù)類型

    這篇文章主要介紹了C語言編程中的布爾bool數(shù)據(jù)類型,bool并不是需要通過C++才能使用的,需要的朋友可以參考下
    2015-11-11
  • C語言對數(shù)組元素進行冒泡排序的實現(xiàn)

    C語言對數(shù)組元素進行冒泡排序的實現(xiàn)

    這篇文章主要介紹了C語言對數(shù)組元素進行冒泡排序的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-02-02
  • c++快速排序詳解

    c++快速排序詳解

    快速排序總體思想:先找到一個樞軸,讓他作為分水嶺。通過一趟排序將待排序的記錄分割成獨立的兩部分,前面一部分都比樞軸小,后面一部分逗比樞軸大,然后又分別對這兩部分記錄繼續(xù)進行遞歸的排序,達到整個序列有序的目的。
    2017-05-05
  • C++實現(xiàn)將數(shù)據(jù)寫入Excel工作表的示例代碼

    C++實現(xiàn)將數(shù)據(jù)寫入Excel工作表的示例代碼

    直觀的界面、出色的計算功能和圖表工具,使Excel成為最流行的個人計算機數(shù)據(jù)處理軟件。在本文中,您將學習如何使用?Spire.XLS?for?C++?創(chuàng)建?Excel?文檔,以及如何將數(shù)據(jù)寫入?Excel?工作表
    2023-03-03
  • C語言深入探索動態(tài)內存分配的使用

    C語言深入探索動態(tài)內存分配的使用

    給數(shù)組分配多大的空間?你是否和初學C時的我一樣,有過這樣的疑問。這一期就來聊一聊動態(tài)內存的分配,讀完這篇文章,你可能對內存的分配有一個更好的理解
    2022-04-04
  • C++日期類運算符重載方式

    C++日期類運算符重載方式

    這篇文章主要介紹了C++日期類運算符重載方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • C++ 讀取文件內容到指定類型的變量方法

    C++ 讀取文件內容到指定類型的變量方法

    今天小編就為大家分享一篇C++ 讀取文件內容到指定類型的變量方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • 利用C++?OpenCV?實現(xiàn)從投影圖像恢復仿射特性

    利用C++?OpenCV?實現(xiàn)從投影圖像恢復仿射特性

    我們通過相機拍攝的圖片存在各種畸變,其中投影畸變使得原本平行的直線不再平行,就會產(chǎn)生照片中近大遠小的效果。本文將具體介紹如何利用OPenCV實現(xiàn)從投影圖像恢復仿射特性,接下來跟著小編一起學習吧
    2021-11-11
  • Qt項目實戰(zhàn)之實現(xiàn)多文本編輯器

    Qt項目實戰(zhàn)之實現(xiàn)多文本編輯器

    這篇文章主要為大家詳細介紹了如何利用Qt實現(xiàn)簡易的多文本編輯器,文中的示例代碼講解詳細,具有一定的參考價值,感興趣的小伙伴可以了解一下
    2023-03-03
  • C語言泛型選擇編程示例詳解

    C語言泛型選擇編程示例詳解

    這篇文章主要介紹了C語言泛型選擇編程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09

最新評論