C语言银行管理系统 C语言实现银行管理系统
南笙一梦 人气:1/* * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名称:main.cpp * 作 者:赵志君 * 完成时间:2016年6月30日 * 版 本 号:v1.0 * * 问题描述:银行管理系统 */ #include<stdio.h> #include<string.h> int mingyan(); //用户名验证 int guayan(int); //挂失验证 int miyan(int); //密码函数 void qukuan(); //取款函数 void cunkuan(); //存款函数 void chaxun(); //查询函数 void xiaohu(); //销户函数 void kaihu(); //开户函数 void zhuanzhang(); //转账函数 void guashi(); //挂失函数 void jiegua(); //解挂函数 void tuichu(); //退出函数 void chaall(); //查询所有用户信息 void denglu(); //管理员登录 char gUser[100][32]; //用户名 char gMima[100][32]; //密码 char Ggua[100][32]; //挂失用户名 float YuE[100]; //存款余额 int UserShu=0; //用户数 int guashu=0; //挂失用户数 void main() { denglu(); int zhiling; //命令 while(zhiling) { printf(" ================================================================ \n"); printf("|| ||\n"); printf("|| <1> 取款 <4> 开户 <7> 挂失 ||\n"); printf("|| <2> 存款 <5> 销户 <8> 解挂 ||\n"); printf("|| <3> 查询 <6> 转账 <0> 退出 ||\n"); printf("|| <9> 查询所有用户信息 ||\n"); printf("|| ||\n"); printf(" ================================================================ \n"); 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: //转账 zhuanzhang(); break; case 7: //挂失 guashi(); break; case 8: //解挂 jiegua(); break; case 9: //查询所有用户信息 chaall(); break; } } } void denglu() //管理员登录 { char zhanghu[32],mima[32]; int m=1; while(m==1) { printf(" ================================================================ \n"); printf("|| ||\n"); printf("|| 卍 中国银行综合业务管理系统 卍 ||\n"); printf("|| ||\n"); printf("|| ||\n"); printf("|| ||\n"); printf(" ================================================================ \n\n"); printf("请输入管理员名: "); scanf("%s",zhanghu); printf("请输入管理员密码: "); scanf("%s",mima); printf("\n"); if(strcmp(zhanghu,mima)==0) { printf(" 正在登陆,请稍后......\n "); printf("▁▁▁▂▂▂▃▃▃▄▄▄▅▅▅▆▆▆▇▇▇████\n\n "); m=0; } } } void qukuan() //取款 { int i,m; float n; i=mingyan(); m=guayan(i); if(m==1) m=miyan(i); while(m==1) { printf("请输入您的取款金额: "); scanf("%f",&n); if(n<=YuE[i]) { printf("请取走您的钞票。\n"); YuE[i]=YuE[i]-n; break; } else printf("您的余额不足,请重新输入。\n"); } } void cunkuan() //存款 { int i,m; float n; i=mingyan(); m=guayan(i); if(m==1) m=miyan(i); while(m==1) { printf("请输入您的存款金额: "); scanf("%f",&n); YuE[i]=YuE[i]+n; printf("存款成功!"); printf("您的当前余额为: %.2f\n",YuE[i]); } } void chaxun() //查询 { int i,m; i=mingyan(); m=guayan(i); if(m==1) m=miyan(i); } void kaihu() //开户 { int i,n=UserShu,j=0; float m; char User[32],mima1[32],mima2[32]; printf("请输入您的用户名: "); getchar(); scanf("%s",User); for(i=0;i<n+1;i++) { if(strcmp(User,gUser[i])==0) { printf("该用户名已存在\n"); break; } else { strcpy(gUser[UserShu],User); while(j!=1) { printf("请输入您的密码: "); scanf("%s",mima1); printf("请再次输入您的密码: "); scanf("%s",mima2); if(strcmp(mima1,mima2)==0) { printf("密码设置成功\n"); printf("请输入您的存款金额: "); scanf("%f",&m); strcpy(gMima[UserShu],mima1); YuE[UserShu]=m; j=1; } else printf("两次输入不相同,请重新输入。\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 <1>确认 <2>取消 \n"); scanf("%d",&n); if(n==1) { for(;i<UserShu;i++) { strcpy(gUser[i],gUser[i+1]); strcpy(gMima[i],gMima[i+1]); YuE[i]=YuE[i+1]; } } UserShu--; printf("销户成功!\n"); m=0; } } void zhuanzhang() //转账 { int i,n,j,s=1; float k; char User[32]; i=mingyan(); n=guayan(i); if(n==1) n=miyan(i); while(n==1) { printf("请输入目标账户:"); scanf("%s",User); for(j=0;j<UserShu;j++) { if(strcmp(gUser[j],User)==0) { n=2; break; } } if(j==UserShu) printf("目标账户不存在,请重新输入。\n"); } while(n==2) { printf("请输入转账金额:"); scanf("%f",&k); if(k<=YuE[i]) { YuE[i]=YuE[i]-k; YuE[j]=YuE[j]+k; printf("转账成功!\n您的当前余额为: %.2f\n",YuE[i]); break; } else printf("余额不足,请重新输入。\n"); } } void guashi() //挂失 { int n,i,m; i=mingyan(); m=guayan(i); if(m==1) m=miyan(i); if(m==1) { printf("您确定要挂失您的账户?\n <1>确认 <2>取消 \n"); scanf("%d",&n); if(n==1) { strcpy(Ggua[guashu],gUser[i]); guashu++; printf("%s 账户挂失成功!\n",gUser[i]); } } } 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("%s 账户解挂成功!\n",gUser[i]); guashu--; } } void tuichu() { } void chaall() //查询所有用户信息 { int i; for(i=0;i<UserShu;i++) printf("用户名:%15s 余额:%.2f\n",gUser[i],YuE[i]); } int mingyan() //用户名验证 { int m=1,i; char User[32]; while(m==1) { printf("请输入您的用户名: "); scanf("%s",User); for(i=0;i<UserShu;i++) if(strcmp(gUser[i],User)==0) { m=0; break; } if(i==UserShu) printf("该用户不存在,请确认后再输入。 \n"); } 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=0; break; } } if(j==guashu) n=1; return n; } int miyan(int i) //密码验证 { char mima[32]; while(1) { printf("请输入您的密码: "); scanf("%s",mima); if(strcmp(gMima[i],mima)==0) { printf("登陆成功!\n"); printf("用户名:%s 余额: %.2f \n",gUser[i],YuE[i]); break; } else printf("您输入的密码不正确,请重新输入。\n"); } return 1; }
更多学习资料请关注专题《管理系统开发》。
加载全部内容