菜鸟级C语言银行管理系统
Posted 南笙一梦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了菜鸟级C语言银行管理系统相关的知识,希望对你有一定的参考价值。
/*
* 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;
心得体会:
这是大一上学期刚刚开始学习编程时的一个实训项目,里边的功能相对简单。作为一个编程菜鸟,看到这个自己更菜的时候写的代码,感觉也是很有意思的。
以上是关于菜鸟级C语言银行管理系统的主要内容,如果未能解决你的问题,请参考以下文章