1.问题描述
用c语言编写一个简化的银行自动存款系统(函数版);适合刚接触C语言,尝试编写100多行代码的初学者作为参考。该代码编写围绕着银行ATM机器的4个业务;分别是查询、取款、存款、修改密码;其中需要两个文件;一个为DrawMoney.txt文档文件存放银行存有的金额,一个为PassWord.txt用来保存密码,放在c代码保存文件名下面,如图:
![](https://img-blog.csdnimg.cn/20200219134142261.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hpYW9jaGVueGlhb3Jlbg==,size_16,color_FFFFFF,t_70)
DrawMoney.txt文件里面设定任意大小的整数金额;
![](https://img-blog.csdnimg.cn/20200219140034785.png)
PassWord.txt文件里面存放任意一个初始密码:
![](https://img-blog.csdnimg.cn/20200219140103563.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3hpYW9jaGVueGlhb3Jlbg==,size_16,color_FFFFFF,t_70)
2.程序代码
#include
#include
/*
*csdn学院--2016级
*目的:让代码见证成长(作为一个初学的菜鸟,如
*大家有发现错误,欢迎指正!)
*文件名称:BankSystemProject1.c
*问题描述:c语言开发简化版银行系统:ATM取款机
*作者:小臣小仁
*完成日期:2020年2月18日
*/
int Pass(); //验证密码
void work(); //业务驱动
void showMenu();// 显示菜单
double openSaveMoney();//查询余额
void drawMoney( );//取款
void saveMoney(); //存款
void changePass(); //修改密码
double openSaveMoney();//打开银行余额文件
void saveBalance(double Balance);//打开保存余额
int openPassWord(); //打开有密码的文件
void SavePassWord(int iPass);//保存修改密码
int main()
{
printf("-------欢迎来到CSDN银行---------\n");
if(Pass())
{
work();
}
return 0;
}
/*---------验证密码----------*/
int Pass()
{
int try = 3;
int iPass;
do
{
printf("请输入密码:");
scanf("%d",&iPass);
if(try > 0)
{
if(iPass != openPassWord())//打开银行余额文件
{
printf("密码输入错误%d次,您还有%d次机会:\n",4-try,try-1);
printf("请重新输入密码:\n");
try--;
}
else
break;
}
else
{
printf("密码有误,退出系统\n");
exit(0);
}
}while(try);
return (try);
}
/*------------业务驱动---------*/
void work()
{
int iChoice; //业务选项
do
{
showMenu();//显示菜单
printf("请输入选项0~4\n");
scanf("%d",&iChoice);
switch(iChoice)
{
case 1://查询
printf("您的余额还有:%.2lf\n",openSaveMoney());
break;
case 2: //存款
saveMoney();
break;
case 3://取款
drawMoney();
break;
case 4://修改密码
changePass();
break;
case 0://退出
break;
}
}while(iChoice);
}
/*---------显示菜单----------*/
void showMenu()
{
printf("------------------\n");
printf("1.查询\n");
printf("2.存款\n");
printf("3.取款\n");
printf("4.改密码\n");
printf("0.退出\n");
printf("-----------------\n");
}
/*----------取款------------*/
void drawMoney()
{
double Balance; //银行账户余额
double getMoney; //取款金额
printf("请输入取款金额:\n");
scanf("%lf",&getMoney);
Balance = openSaveMoney();//取出余额数目
if(Balance |