期末实训作业C语言实现银行管理系统

C语言实现银行管理系统

期末实训作业C语言实现银行管理系统

要求实现的系统能进行以下操作:

  • 开户
  • 销户
  • 查询
  • 存款
  • 取款
  • 挂失
  • 解除挂失
  • 更改密码
  • 退出系统

话不多说,上代码。并不完全是我自己构思自己编写的,是我在社区上看了一些前辈的,然后自己在慢慢改,修改密码的版块换了好几种方法,最后还是决定用这种。觉得还是很垃圾,改密版块还有一个strcmp的使用方法的警告没有办法解决,但是能勉强运行吧。

/*

	*作	   者:蓝浩
	*root密码:0101 
	*完成时间:2019年6月27日
	*版	   本:v3.0
	*文 件 名:银行管理系统 
	*文件描述:
		银行管理项目:主要功能是模拟银行的存取款业务,软件功能囊括了银行从用户开户到最终销户等业务的全过程。
  		一、账户操作:开户、销户、修改密码、判断用户名密码登录,
  		二、账户金额操作:登录成功后,下一步选择操作类型。操作类型包括八种:存款、取款、挂失、解挂、开户、销户、查询账户余额、退出, 
			要求写出需求分析,设计报告,完成银行管理系统设计开发,制作功能说明的PPT。	
*/


#include <stdlib.h>
#include<stdio.h>
#include<string.h>
#include <windows.h> 
int mingyan();   //用户名验证
int guayan(int);   //挂失验证
int miyan(int);     //密码函数
 
void qukuan();      //取款函数
void cunkuan();     //存款函数
void chaxun();      //查询函数
void xiaohu();      //销户函数
void kaihu();       //开户函数
void guashi();      //挂失函数
void jiegua();      //解挂函数
void tuichu();      //退出函数
void denglu();      //管理员登录函数 
void xiugaimima(); 		//更改密码函数 
void zhucaidan(); 	//主菜单函数 

//全局变量 
char gUser[100][32];            //用户名
char gMima[100][32];            //密码
char Ggua[100][32];				//挂失用户名
char mima_temp[20];
char new_mima[20];   
char new_mima1[20];

float YuE[100];                 //存款余额
int UserShu=0;                  //用户数
int guashu=0;                   //挂失用户数


void main()
{
	system("color f1"); 	//定义字体颜色 7为背景颜色(白色)1为字体颜色(蓝色) 
	denglu();				//首界面调用登录函数板块。 
	int zhiling;           
	while(zhiling)
	{
	printf("\n\n\n\n"); 
	printf("\t\t\t<_____________________移动银行管理系统______________________>\n");
	printf("\t\t\t||                     (1)取   款                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (2)存   款                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (3)查   询                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (4)开   户                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (5)销   户                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (6)挂   失                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (7)解   挂                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (8)退   出                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (9)更改密码                         ||\n");
	printf("\t\t\t<___________________________________________________________>\n");
	printf("\n\n\t\t\t请选择操作(1--9):< >\b\b");
		printf("请输入您的指令:  ");
		scanf("%d",&zhiling);
		printf("\n");
		switch(zhiling)
		{
		case 1:                      //跳到取款板块
			qukuan();
			break;
		case 2:                      //跳到存款板块
			cunkuan(); 
			break;
		case 3:                      //跳到查询板块
			chaxun();
			break;
		case 4:                      //跳到开户板块
			kaihu();
			break;
		case 5:                     //跳到销户板块
			xiaohu();
			break;

		case 6:                     //跳到挂失板块 
			guashi();
			break;
		case 7:                    //跳到解挂板块
			jiegua();
			break;
		case 8:
			tuichu();			   //跳到退出板块 
			break;
		case 9:
			xiugaimima();		   //修改密码 
			break;
		}
	}

}

void zhucaidan()
{
	int zhiling;           
	while(zhiling)
	{
	printf("\n\n\n\n"); 
	printf("\t\t\t<_____________________移动银行管理系统______________________>\n");
	printf("\t\t\t||                     (1)取   款                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (2)存   款                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (3)查   询                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (4)开   户                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (5)销   户                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (6)挂   失                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (7)解   挂                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (8)退   出                          ||\n");
	printf("\t\t\t||---------------------------------||\n");
	printf("\t\t\t||                     (9)更改密码                         ||\n");
	printf("\t\t\t<___________________________________________________________>\n");
	printf("\n\n\t\t\t请选择操作(1--9):< >\b\b");
		printf("请输入您的指令:  ");
		scanf("%d",&zhiling);
		printf("\n");
		switch(zhiling)
		{
		case 1:                      //跳到取款板块
			qukuan();
			break;
		case 2:                      //跳到存款板块
			cunkuan(); 
			break;
		case 3:                      //跳到查询板块
			chaxun();
			break;
		case 4:                      //跳到开户板块
			kaihu();
			break;
		case 5:                     //跳到销户板块
			xiaohu();
			break;

		case 6:                     //跳到挂失板块 
			guashi();
			break;
		case 7:                    //跳到解挂板块
			jiegua();
			break;
		case 8:
			tuichu();			   //跳到退出板块 
			break;
		case 9:
			xiugaimima();
			break;
		}
	}
}

void denglu()    				    //登录板块 
{
	char zhanghu[32]="0101",mima[32];		//定义两个本版块变量,用于储存输入的管理员账号和密码。		
	int m=1;						//m=1 即为用户名与密码不一致(提示密码错误),会重新弹出以下的界面。
	while(m==1)
	{
    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("\t\t        ├────────────────────────────────┤\n");
	printf("\t\t        │                   管理员帐号:admin 密码为:admin               │\n");
    printf("\t\t        └================================================================┘\n");
	printf("\t\t                                                                            \n");
		printf("\t\t\t请输入root用户密码: ");
		scanf("%s",&mima);
		printf("\n");
		if(!strcmp(zhanghu,mima))													//当输入的用户名与密码一致时,视为密码正确。否则视为密码错误。 
		{
		
			printf("\t\t\t▁▁▁▂▂▂▃▃▃▄▄正在登陆,请稍后......▄▅▅▅▆▆▆▇▇▇████\n\n ");		//密码正确是执行的步骤。 
			m=0;																	//m=0 即为密码正确,不再弹出上面的界面。 
		}
		else{
			printf("\n\n\t\t\t\t┌───────——─────────────────┐\n");
			printf("\t\t\t\t    **********用户名或密码错误,请重新输入!**********\n");	
			printf("\t\t\t\t└───────────——─────────────┘\n\n\n"); 							//密码错误时执行的步骤。 
		} 
	}
}

void qukuan()       //取款板块 
{
	int i,m;	
	float n;
	i=mingyan();    //进行调用用户名验证的操作。  
	m=guayan(i);	//进行调用挂失验证的操作。如果已经挂失则无法进行本次取款操作。 
	if(m==1){
		m=miyan(i);	//调用密码验证函数对密码进行检测。
	}
	else{
		qukuan();	//如果输入的用户名不对则会要求重新输入,输入的密码不对也会要求重新输入。 
	}
	while(m==1)		//进入取款程序 
	{
		printf("\t\t\t请输入您的取款金额: ");
		scanf("%f",&n);
		if(n<=YuE[i])							    //检测账户余额是否满足输入的取款金额。 
		{
			printf("\n\n\t\t\t\t┌────────────────────────┐\n"); 
			printf("\t\t\t\t    **********交易成功,请取走您的钞票**********\n");
			printf("t\t\t\t\t└────────────────────────┘\n"); 
			YuE[i]=YuE[i]-n; 					    //对取款后的账户余额进行校准。 
			break;
		}
		else{   			  						//账户余额不满足输入的取款金额时执行这个语句。 
		
			printf("\n\n\n\t\t\t\t┌────────────────────────┐\n");
			printf("\t\t\t\t\t**********对不起,您的余额不足**********\n");
			printf("t\t\t\t\t└────────────────────────┘\n"); 
			break;
		}
	}
}


void cunkuan()   		//存款板块 
{
	int i,m;
	float n;
	i=mingyan();		// 进行调用用户名验证的操作。
	m=guayan(i);		//进行调用挂失验证的操作。如果已经挂失则无法进行本次取款操作。
	if(m==1){
		m=miyan(i);		//调用密码验证函数对密码进行检测。 
	}
	while(m==1)
	{
		printf("\t\t\t请输入您的存款金额: ");
		scanf("%f",&n);
		YuE[i]=YuE[i]+n;							//对存款后的账户余额进行校准。
		printf("\n\n\t\t\t\t┌────────────────────────┐\n"); 
		printf("\t\t\t\t\t**********交易成功!**********\n");
		printf("t\t\t\t\t└────────────────────────┘\n");
		printf("\t\t\t您的当前余额为: %.2f\n",YuE[i]);	//显示本次存款操作后的账户余额。 
		break;
	}
	
}


void chaxun()    		//查询板块 
{
	int i,m; 
	i=mingyan();		// 进行调用用户名验证的操作。
	m=guayan(i);		//进行调用挂失验证的操作。如果已经挂失则无法进行本次取款操作。
	if(m==1){
		m=miyan(i); 
	}
	while(m==1)
	{
	printf("\n\n\t\t\t\t┌────────────────────────┐\n"); 
	printf("\t\t\t\t    您的当前余额为: %.2f\n",YuE[i]);
	printf("\t\t\t\t└────────────────────────┘\n");
	break;
	}
}


void kaihu()   //开户板块 
{
	int i,n=UserShu,j=0;
	int t=0;
	float m;
	int jinjidianhua[20];
	int dianhua[20];
	int len;
	int len1;
	int len2;
	
	
 
	char *dh;
	char *jinjidh;
	char *sfz;
	char name[20];
	char tongxindizhi[32];
	char jinjixingming[32];
	char jjtelephone[32];
	char telephone[32]; 
	char shenfenzheng[32]; 
	char User[32];
	char mima1[32];
	char mima2[32];		//定义三个变量用于储存输入的用户名、密码和二次确认密码。 
	printf("\t\t\t请输入您的十位用户名: ");
	scanf("%s",User);

	for(i=0;i<n+1;i++)
	{
		if(strcmp(User,gUser[i])==0)		//对用户名进行查重,如果重复则需重新输入。 
		{
			printf("\n\n\t\t\t\t┌────────────────────────┐\n");
			printf("\t\t\t\t\t  **********该用户名已存在**********\n");
			printf("\t\t\t\t└────────────────────────┘\n");
			break;
		}
		else								//如果通过用户名查重,则进行此操作。	
		{
			strcpy(gUser[UserShu],User);
			while(j!=1)
			{
				printf("\n\t\t\t请输入您的姓名:");
				scanf("%s",&name);
				printf("\n\t\t\t请输入您的十八位身份证号:");
				scanf("%s",&shenfenzheng);
				char *sfz=shenfenzheng;
				int len = strlen(sfz);
				if(len !=18)
				{
					printf("\n\n\t\t\t\t┌────────────────────────┐\n"); 
					printf("\t\t\t\t\t    **********输入有误!**********\n");
					printf("\t\t\t\t└────────────────────────┘\n");
					zhucaidan(); 
				}
				printf("\n\t\t\t请输入您的十一位手机号:");
				scanf("%s",&telephone);
				char *dh=telephone;
				int len1 = strlen(dh);
				if(len1 !=11)
				{
					printf("\n\n\t\t\t\t┌────────────────────────┐\n"); 
					printf("\t\t\t\t\t    **********输入有误!**********\n");
					printf("\t\t\t\t└────────────────────────┘\n");
					zhucaidan();
				}
				/*
				while( *sfz != '\n' ) //求字符串的长度 
				{
					len1++;
					sfz++;	
				}
				if(len1!=18)
				{
					printf("\n\t\t\t**********输入有误!**********");
					zhucaidan(); 
				}*/
				printf("\n\t\t\t请输入您的通信地址:");
				scanf("%s",&tongxindizhi);
				printf("\n\t\t\t请输入您的紧急联系人姓名:");
				scanf("%s",&jinjixingming);
				printf("\n\t\t\t请输入您的紧急联系人电话:");
				scanf("%s",&jjtelephone); 
				char *jinjidh=jjtelephone;
				int len2 = strlen(jinjidh);
				if(len2 !=11)
				{
					printf("\n\n\t\t\t\t┌────────────────────────┐\n"); 
					printf("\t\t\t\t\t    **********输入有误!**********\n");
					printf("\t\t\t\t└────────────────────────┘\n");
					zhucaidan();
				}
				printf("\t\t\t请输入您的密码: ");
				scanf("%s",mima1);
				printf("\t\t\t请再次输入您的密码: ");
				scanf("%s",mima2);
				if(strcmp(mima1,mima2)==0)  //如果两次输入的密码一致,则设置成功,自动进入存款操作界面。 
				{
					printf("\n\n\t\t\t\t┌────────────────────────┐\n");
					printf("\t\t\t\t\t   **********密码设置成功**********\n");
					printf("\t\t\t\t└────────────────────────┘\n\n\n");
					printf("\t\t\t$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\n");
					printf("\t\t\t$$$$$                                                              $$$$$\n");
					printf("\t\t\t$$$$$********************请为新开账户首次存款!********************$$$$$\n");
					printf("\t\t\t$$$$$                                                              $$$$$\n");
					printf("\t\t\t$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\n");
					printf("\n\t\t\t\t请输入您的首次存款金额: ");
					scanf("%f",&m);
					strcpy(gMima[UserShu],mima1); 					//再次对密码进行校验。 
					YuE[UserShu]=m;									//讲输入的存款金额打入账户余额。 
					j=1;
					printf("\n\n\t\t\t\t┌────────────────────────┐\n"); 
					printf("\t\t\t\t\t      **********交易成功!**********\n");
					printf("\t\t\t\t└────────────────────────┘\n");
							}
				else{
					printf("\n\n\t\t\t\t┌────────────────────────┐\n");
					printf("\t\t\t\t    **********两次输入不一致,请重新输入**********\n ");		//当输开户时输入的两次密码不一致时执行此操作。 返回到输入第一次密码的步骤,重新输入两次一致的密码。
					printf("\t\t\t\t└────────────────────────┘\n"); 
				}
			}
			UserShu++;												//在数据库中增加一个用户数量。 
			break;
		}
	}
}


void xiaohu()    //销户板块 
{
	int i,n,m;
	i=mingyan();				// 进行调用用户名验证的操作。
	m=guayan(i);				//进行调用挂失验证的操作。如果已经挂失则无法进行本次取款操作。
	if(m==1){
		m=miyan(i);				//调用密码验证函数对密码进行检测。 
	}				
	while(m==1)
	{
		printf("\n\n\t\t\t\t┌────────────────────────┐\n");
		printf("\t\t\t\t\t\t您确定要注销您的账户?\n   \t\t\t\t\t\t<1>确认    <2>取消   \n");
		printf("\t\t\t\t└────────────────────────┘\n");
		printf("\t\t\t请输入您的指令:");
		scanf("%d",&n);
		if(n==1)									//输入1时执行本语句里的操作。 
		{
			for(i=0;i<UserShu;i++)  				//对要销户的账户进行账号密码的一个确认 
			{
				strcpy(gUser[i],gUser[i+1]);		//调出用户名进行确认 。 
				strcpy(gMima[i],gMima[i+1]);		//调出用户名对应的密码进行确认。 
				YuE[i]=YuE[i+1];					//对销户的余额进行清除 。 
				UserShu--;							//在数据库中减少一个用户数量。 
				printf("\n\n\t\t\t\t┌────────────────────────┐\n");
				printf("t\t\t\t\t\t**********注销账户成功!!**********\n");
				printf("t\t\t\t\t└────────────────────────┘\n");
			}
		}
	
	m=0;
	}
}



void guashi()      //挂失板块 
{
	int n,i,m;
	i=mingyan();			// 进行调用用户名验证的操作。
	m=guayan(i);			//进行调用挂失验证的操作。如果已经挂失则无法进行本次取款操作。
	if(m==1){
		m=miyan(i);	//调用密码验证函数对密码进行检测。 
	}		
	if(m==1)
	{
		printf("\n\n\t\t\t\t┌────────────────────────┐\n");
		printf("\t\t\t\t\t\t您确定要挂失您的账户?\n   \t\t\t\t\t\t<1>确认    <2>取消   \n");
		printf("\t\t\t\t└────────────────────────┘\n");
		printf("\t\t\t请输入您的指令:");
		scanf("%d",&n);
		if(n==1)
		{
			strcpy(Ggua[guashu],gUser[i]);		//讲确定挂失的用户名称扔进数据库。 
			guashu++;							//增加一个挂失用户数据。 
			printf("\n\n\t\t\t\t┌────────────────────────┐\n");
			printf("\t\t\t\t\t**********账户挂失成功!**********\n",gUser[i]);
			printf("\t\t\t\t└────────────────────────┘\n");
		}
		if(n==2)
		{
			printf("\n\n\t\t\t\t┌────────────────────────┐\n");
			printf("\t\t\t\t    ******************取消成功!******************\n");
			printf("\t\t\t\t└────────────────────────┘\n");
			zhucaidan();
		} 
	}
}

void jiegua()      //解挂板块 
{
	int i,m,j;
	i=mingyan();			// 进行调用用户名验证的操作。
	m=guayan(i);			//进行调用挂失验证的操作。如果已经挂失则无法进行本次取款操作。
	if(m==0)
		m=miyan(i)+1;		//调用密码验证函数对密码进行检测。
	if(m==2)
	{
		for(j=0;j<guashu;j++)
		{
			if(strcmp(gUser[i],Ggua[j])==0)		//如果数据库中没有输入的用户数据,则视为该用户未挂失,直接跳出这次循环。 
				break;
		}
		for(;j<guashu;j++)
		{ 
			strcpy(Ggua[j],Ggua[j+1]);			//如果数据中能找到输入的用户名,则讲此次输入的用户名拉出记录挂失的数据库,即解挂。 
			printf("\n\n\t\t\t\t┌────────────────────────┐\n");
			printf("\t\t\t\t\t **********账户解挂成功!**********\n",gUser[i]);
			printf("\t\t\t\t└────────────────────────┘\n");
			guashu--;	
		}							//解挂成功后在挂失记录的数据库中减掉一个对应的用户数据。 
	}
	else{
		printf("\n\n\t\t\t\t┌────────────────────────┐\n");
		printf("\t\t\t\t\t **********该用户未挂失!**********\n",gUser[i]);
		printf("\t\t\t\t└────────────────────────┘\n");
		zhucaidan();
	}
}

int mingyan()     //用户名验证
{
	int m=1,i;
	char yonghuming[32]; 
	while(m==1)
	{
		printf("\t\t\t请输入您的用户名: ");
		scanf("%s",yonghuming);
		for(i=0;i<UserShu;i++)
			if(strcmp(gUser[i],yonghuming)==0) 		//如果输入的用户名与已储存的用户名一致,则视为验证通过。 
			{
				m=0;
				break;
			}
		if(i==UserShu)
		{							//如果在已经储存的用户名中未找到输入的用户名,则视为验证未通过。 
			printf("\n\n\t\t\t\t┌──────────────────────────┐\n");
			printf("\t\t\t\t    **********该用户不存在,请确认后重新输入**********\n"); 
			printf("\t\t\t\t└──────────────────────────┘\n");
			zhucaidan();
		}
		 return i;
	}
	
}

int guayan(int i)             					//挂失验证
{
	int j,n;
	for(j=0;j<guashu;j++)
	{
		if(strcmp(gUser[i],Ggua[j])==0) 		//如果已经储存的挂失用户名与输入的用户名 一致,即为该用户已经挂失,无法重复挂失。 
		{
			printf("\n\n\t\t\t\t┌─────────────————─────────────┐\n");
			printf("\t\t\t\t    **********此用户已经挂失,请解挂后再进行操作!**********\n");
			printf("\t\t\t\t└─────────────——──——───────────┘\n");
			n=0;
			break;
			zhucaidan();
		}
	}
	if(j==guashu)
		n=1;
	return n;
}


int miyan(int i)    							//密码验证,为提高安全性,在每一个操作都会调用到本板块。 
{
	char mima[32];	 							// 定义一个储存输入的密码的变量 
	while(1)
	{
		printf("\t\t\t请输入您的密码: ");
		scanf("%s",mima);
		if(strcmp(gMima[i],mima)==0)			//如果输入的密码与数据库中的密码完全一致,即可视为密码正确。执行if中的语句。 
		{
			
			printf("\n\t\t\t\t\t**********登陆成功!**********\n\n");
			printf("\n\n\t\t\t\t┌────────────────────────┐\n");
			printf("\t\t\t\t\t\t当前用户:%s \n",gUser[i]);									//显示用户名以及余额。 
			printf("\t\t\t\t└────────────────────────┘\n");
			break;
		}
		else{									//如果输入的密码与数据库中的不一致即可视为密码错误,执行else中的语句。 
			printf("\n\n\t\t\t┌───────────────——───────────┐\n");
			printf("\t\t\t  **********您输入的密码不正确,请确认后重新输入**********\n");
			printf("\t\t\t└───────────────────——───────┘\n");
			zhucaidan(); 
		}
	}
	return 1;
	
}

void tuichu()   								//退出板块,因为没有使用txt文件进行永久性的储存,所以这个版块没有进行深入编写,直接退出! 
{
	denglu();
}

/*
void xiugaimima()   							//修改密码
{
	char mima_temp[20];							//用来存放用户输入的密码
	char new_mima[20];   						//存放第一次新密码
	char new_mima1[20];
	char name[32];
	int i,m,j;
	
	i=mingyan();	// 进行调用用户名验证的操作。
	
	printf("\t\t\t\t\t请输入原始密码:");
	scanf("%s",&mima_temp);
	if(!strcmp(mima_temp,gMima))  				//比较原始密码 与 用户输入的密码
	{
		printf("\t\t\t\t\t请输入新密码:");
		scanf("%s",&new_mima);
		printf("\t\t\t\t\t请再输一次:");
		scanf("%s",&new_mima1);
		if(strcmp(new_mima1,new_mima)==0) 		//比较 两次修改后输入的密码
		{
			strcpy(gMima,new_mima); 			//将 新密码 拷贝给 原始密码,因为知道strcpy函数有这个覆盖的功能,所以先将就着用。 
			printf("\n\t\t\t\t******密码修改成功!请牢记!******\n");
			zhucaidan();
			
		}
		else
		{
			printf("\n\t\t\t\t******两次输入的密码不一致!******\n");
			zhucaidan();
			
		}
	}
	else
	{
		printf("\n\t\t\t\t\t******原始密码错误!******\n");
		zhucaidan();
	}
}*/
void xiugaimima()   							//修改密码
{
	char name[32];
	char xmm1[10]= {0};
	char xmm2[10]= {0};
	char ch;	  						//存放第二次新密码
	int i,m;
	int t=0,j=0,r;
	i=mingyan();		// 进行调用用户名验证的操作。
	m=guayan(i);		//进行调用挂失验证的操作。如果已经挂失则无法进行本次取款操作。
	if(m==1){
		m=miyan(i);
		printf("\t\t\t\t\t请输入新密码:");		//调用密码验证函数对密码进行检测。
		scanf("%s",xmm1); 
		
	}		
/*	while((ch=getch()!='\r'))
	{
		xmm1[i++]=ch;
		putchar('*');
	}*/
	printf("\t\t\t\t\t请再输一次:");
	scanf("%s",xmm2); 
/*	while((ch=getch()!='\r'))
	{
		xmm2[j++]=ch;
		putchar('*');
	}*/
	if(r=strcmp(xmm1,xmm2)!=0) 						//比较 两次修改后输入的密码
	{
		 			 
		printf("\n\t\t\t\t******两次输入的密码不一致!******\n");
		zhucaidan();	
	}
	else 	
	{	
		strcpy(gMima,xmm2); 			//将 新密码 拷贝给 原始密码,因为知道strcpy函数有这个覆盖的功能,所以先将就着用。 
		printf("\n\t\t\t\t******密码修改成功!请牢记!******\n");
		zhucaidan();
		
	}
}

你可能感兴趣的:(C语编程记录)