银行管理系统.docx
《银行管理系统.docx》由会员分享,可在线阅读,更多相关《银行管理系统.docx(23页珍藏版)》请在冰豆网上搜索。
![银行管理系统.docx](https://file1.bdocx.com/fileroot1/2023-1/6/7ae43e54-3c3d-445f-8e58-5d69c00f5b47/7ae43e54-3c3d-445f-8e58-5d69c00f5b471.gif)
银行管理系统
//开办.cpp:
定义控制台应用程序的入口点。
//
#include"stdafx.h"
#include"stdlib.h"
#include"string.h"
#include"ctype.h"
#include
#include
/*----------------*/
voidapply();/*申请帐号*/
voidland();/*登陆系统*/
voidfinds();/*查询存款*/
voidsaving();/*存钱*/
voidget();/*取款*/
voidturn();/*转帐*/
/*---------------------*/
structper
{
charname[20];
characcounts[20];
charpassword[20];
intmoney;
}dat,temp;
/*-----------*/
voidmanage()/*主函数*/
{
inti;
loop:
printf("┌────────────────────────┐\n");
printf("├───────欢迎进入银行管理系统───────┤\n");
printf("├────────────────────────┤\n");
printf("│
(1).申请帐号,输入1并按Enter│\n");
printf("├────────────────────────┤\n");
printf("│
(2).存款,输入2并按Enter│\n");
printf("├────────────────────────┤\n");
printf("│(3).取款,输入3并按Enter│\n");
printf("├────────────────────────┤\n");
printf("│(4).转帐,输入4并按Enter│\n");
printf("├────────────────────────┤\n");
printf("│(5).查询,输入5并按Enter│\n");
printf("├────────────────────────┤\n");
printf("│(6).退出系统,输入6并按Enter│\n");
printf("├────────────────────────┤\n");
printf("└────────────────────────┘\n");
printf("请输入选择:
");
scanf("%d",&i);
switch(i)
{
case1:
apply();/*申请帐号*/
gotoloop;
break;
case2:
saving();
gotoloop;
case3:
get();
gotoloop;
case4:
finds();
gotoloop;/*取款*/
}
}
voidapply()/*申请帐号*/
{
FILE*pa,*pa1;
charpassword_ok[20];
pa=fopen("land.dat","ab");/*新建或者追加时的文件*/
lp:
printf("请输入你的名字:
");
scanf("%s",dat.name);
pa1=fopen("land.dat","rb");
printf("帐号:
");
scanf("%s",dat.accounts);
while(fread(&temp,sizeof(temp),1,pa1)==1)/*查看帐号,如果有人用了就不给用*/
{
if((strcmp(dat.accounts,temp.accounts)==0))
{
printf("此帐号已经有人用了,请重新输入.\n");
fclose(pa1);
gotolp;/*跳到lp*/
}
}
printf("密码:
");
scanf("%s",dat.password);
printf("确认密码:
");
scanf("%s",password_ok);
if(strcmp(dat.password,password_ok)!
=0)/*密码与确认密码比较*/
{
printf("确认密码不一样!
请重新输入.\n");
gotolp;/*跳到lp*/
}
dat.money=0;
fwrite(&dat,sizeof(dat),1,pa);/*写入文件*/
fclose(pa);
printf("申请成功.\n");
printf("输入任何键返回菜单......\n");
getch();
}
voidsaving()/*存款*/
{
FILE*land,*lan;
characcounts[20];
charpassword[20];
intmoney,i=1;
land=fopen("land.dat","rb");/*以只读的方式打开文件*/
if(land==NULL)
{
printf("还没有一个人申请帐号.\n");
printf("输入任何键返回菜单......\n");
getch();
gotoloop;
}
printf("请输入你的帐号:
");/*输入帐号*/
scanf("%s",accounts);
printf("密码:
");
scanf("%s",password);/*输入密码*/
while(!
feof(land))/*判断文件未到结尾*/
{
fread(&dat,sizeof(dat),1,land);/*从文件里读取数据*/
if(strcmp(accounts,dat.accounts)==0&&strcmp(password,dat.password)==0)/*登陆系统*/
{
printf("请输入你要存款的数额:
");
scanf("%d",&money);/*存款的数额*/
strcpy(temp.name,dat.name);/*temp.name*/
strcpy(temp.accounts,accounts);/*temp.accounts*/
strcpy(temp.password,password);/*temp.password*/
temp.money=dat.money+money;/*累计钱数*/
break;/*跳出循环*/
}
i++;/*这个是最关键的,它代表是第几个结构体*/
if(feof(land)!
=0)/*判断文件到了结尾,但是还没有相同的*/
{
printf("帐号不存在!
\n");/*输出*/
printf("按任何键返回菜单......\n");
getch();
gotoloop;/*直接跳到结尾*/
}
}
if(strcmp(accounts,temp.accounts)==0&&strcmp(password,temp.password)==0)
{
fclose(land);
lan=fopen("land.dat","wb+");
fseek(lan,i*sizeof(temp),0);/*文件的定位,将它指向要修改的结构体*/
fwrite(&temp,sizeof(temp),1,lan);/*重新写入文件*/
rewind(lan);/*将文件的指针一到开头的位置*/
fclose(lan);/*关闭文件*/
}
printf("存款成功!
\n");
printf("按任何键返回菜单......\n");
getch();
loop:
;/*结尾*/
}
voidfinds()/*查询*/
{
FILE*pa;
characcounts[20];
pa=fopen("land.dat","rb");/*以只读的方式打开一个二进制文件*/
if(pa==NULL)
{
printf("还没有一个人申请帐号.\n");
printf("输入任何键返回菜单......\n");
getch();
}
else
{
printf("请输入你的帐号:
");
scanf("%s",accounts);/*输入帐号*/
while(feof(pa)==0)
{
fread(&dat,sizeof(dat),1,pa);/*取出数据*/
if(strcmp(dat.accounts,accounts)==0)/*比较*/
{
printf("-------------------------------------\n");
printf("|名字|帐号|存款(元)|\n");
printf("|------------|------------|---------|\n");
printf("|%12s|%12s%|%9d|\n",dat.name,dat.accounts,dat.money);
printf("-------------------------------------\n");
printf("按任何键返回菜单......\n");
getch();
break;
}
elseif(feof(pa)!
=0)
{
printf("帐号不存在!
\n");
printf("按任何键返回菜单......\n");
getch();
break;
}
}
}
fclose(pa);
}
voidget()/*存款*/
{
FILE*land,*lan;
characcounts[20];
charpassword[20];
intmoney,i=1;
land=fopen("land.dat","rb");/*以只读的方式打开文件*/
if(land==NULL)
{
printf("还没有一个人申请帐号.\n");
printf("输入任何键返回菜单......\n");
getch();
gotoloop;
}
printf("请输入你的帐号:
");/*输入帐号*/
scanf("%s",accounts);
printf("密码:
");
scanf("%s",password);/*输入密码*/
while(!
feof(land))/*判断文件未到结尾*/
{
fread(&dat,sizeof(dat),1,land);/*从文件里读取数据*/
if(strcmp(accounts,dat.accounts)==0&&strcmp(password,dat.password)==0)/*登陆系统*/
{
printf("请输入你要取款的数额:
");
scanf("%d",&money);/*存款的数额*/
if(money>dat.money)
{
printf("你哪有那么多钱啊!
\n");
printf("按任何键返回菜单......\n");
getch();
gotoloop;
}
strcpy(temp.name,dat.name);/*temp.name*/
strcpy(temp.accounts,accounts);/*temp.accounts*/
strcpy(temp.password,password);/*temp.password*/
temp.money=dat.money-money;/*累计钱数*/
break;/*跳出循环*/
}
i++;/*这个是最关键的,它代表是第几个结构体*/
if(feof(land)!
=0)/*判断文件到了结尾,但是还没有相同的*/
{
printf("帐号不存在!
\n");/*输出*/
printf("按任何键返回菜单......\n");
getch();
gotoloop;/*直接跳到结尾*/
}
}
if(strcmp(accounts,temp.accounts)==0&&strcmp(password,temp.password)==0)
{
fclose(land);
lan=fopen("land.dat","wb+");
fseek(lan,i*sizeof(temp),0);/*文件的定位,将它指向要修改的结构体*/
fwrite(&temp,sizeof(temp),1,lan);/*重新写入文件*/
rewind(lan);/*将文件的指针一到开头的位置*/
fclose(lan);/*关闭文件*/
}
printf("取款成功!
\n");
printf("按任何键返回菜单......\n");
getch();
loop:
;/*结尾*/
}
voidfuna1()
{system("cls");
printf("\n\n\n\t\t***************欢迎进入系统管理!
******************\n\n\n");
printf("按任意键程序继续执行\n");
getchar();
}
voidfuna2()
{system("cls");
printf("\n\n\nWelcometosystemmanagement!
\n\n\n\n\n\n\n\n\n\n\n\n");
printf("Pressanykeytocontinuetheprogram\n");
getchar();
}
voidfunb1()
{do
{inti;
inta,b,c,d,e,g,h,j,k=20091401;
staticintf;
printf("\n\n欢迎进入银行账目管理子系统!
\n\n");
printf("\n=============================\n");
printf("\n||1:
开户||\n");
printf("\n||2:
销户||\n");
printf("\n||3:
存款||\n");
printf("\n||4:
取款||\n");
printf("\n||5:
余额查询||\n");
printf("\n||0:
退出子系统||\n");
printf("\n=============================\n");
scanf("%d",&i);
switch(i)
{
case5:
printf("请输入您的账号:
\n");
scanf("%d",&a);
printf("请输入您的密码:
\n");
scanf("%d",&d);
printf("您选择了余额查询:
\n");
printf("您的余额为:
\n");
printf("谢谢您的合作!
\n");break;
case4:
printf("请输入您的账号:
\n");
scanf("%d",&a);
printf("请输入您的密码:
\n");
scanf("%d",&d);
printf("请输入您要取钱的数目:
\n");
scanf("%d",&e);
f-=e;
printf("您的余额为:
\n");
printf("谢谢您的合作!
\n");break;
case3:
printf("请输入您的账号:
\n");
scanf("%d",&a);
printf("请输入您要存钱的数目:
\n");
scanf("%d",&e);
f+=e;
printf("您的余额为:
\n");
printf("谢谢您的合作:
\n");break;
case2:
printf("请输入您的账号:
\n");
scanf("%d",&a);
if(a==k)
{printf("\n请输入您的密码:
\n");
scanf("%d",&d);
if(d==g)
{printf("请输入您身份证号码:
\n");
scanf("%d",&c);
if(d==c);
printf("您的账号已被冻结!
!
!
\n");
printf("谢谢您的合作\n");break;
}elseprintf("您输入有误");break;
}elseprintf("您输入有误");break;
case1:
printf("请输入您身份证号码:
\n");
scanf("%d",&d);
printf("您的账号为%d\n",k);
do{
printf("请您设置密码:
");
scanf("%d",&g);
printf("请再次输入密码:
");
scanf("%d",&h);
}while(g!
=h);
if(g==h)printf("您拥有了一个新账号!
\n");break;
printf("谢谢您的合作!
\n");break;
case0:
return;
}
}while
(1);
}
voidfunb2()
{do
{inti;
inta,b,c,d,e,g,h,j,k=20091401;
staticintf;
printf("\n\nWelcometothebankaccountmanagementsubsystem!
\n\n");
printf("\n=============================\n");
printf("\n||1:
Account||\n");
printf("\n||2:
Canceltheaccount||\n");
printf("\n||3:
Deposit||\n");
printf("\n||4:
Withdrawal||\n");
printf("\n||5:
BalanceInquiry||\n");
printf("\n||0:
Exitsub||\n");
printf("\n=============================\n");
scanf("%d",&i);
switch(i)
{
case5:
printf("Pleaseenteryouraccountnumber:
\n");
scanf("%d",&a);
printf("Pleaseenteryourpassword\n");
scanf("%d",&d);
printf("Youhaveselectedbalanceinquiry:
\n");
printf("Yourbalanceis:
\n");
printf("Thankyouforyourcooperation!
\n");break;
case4:
printf("Pleaseenteryouraccountnumber:
\n");
scanf("%d",&a);
printf("Pleaseenteryourpassword\n");
scanf("%d",&d);
printf("Pleaseenterthenumberyouwanttowithdrawmoney:
\n");
scanf("%d",&e);
f-=e;
printf("Yourbalanceis:
\n");
printf("Thankyouforyourcooperation!
\n");break;
case3:
printf("Pleaseenteryouraccountnumber:
\n");
scanf("%d",&a);
printf("Pleaseenterthenumberyouwanttosavemoney:
\n");
scanf("%d",&e);
f+=e;
printf("Yourbalanceis:
\n");
printf("Thankyouforyourcooperation!
\n");break;
case2:
printf("Pleaseenteryouraccountnumber:
\n");
scanf("%d",&a);
if(a==k)
{printf("\nPleaseenteryourpassword\n");
scanf("%d",&d);
if(d==g)
{printf("PleaseenteryourIDnumber:
\n");
scanf("%d",&c);
if(d==c);
printf("Youraccounthasbeenfrozen!
!
!
\n");
printf("Thankyouforyourcooperation!
\n");break;
}elseprintf("Youenterthewrong");break;
}elseprintf("Youenterthewrong");break;
case1:
printf("PleaseenteryourIDnumber:
\n");
scanf("%d",&d);
printf("Youraccountis%d\n",k);
do{
printf("Pleasesetapassword:
");
scanf("%d",&g);
printf("Pleasere-enterpassword:
");
scanf("%d",&h);
}while(g!
=h);
if(g==h)printf("Youhaveanewaccount!
\n")