第47课时,简单银行系统的初步框架(加强版)
2015-04-20 21:39
218 查看
/* *Copyright(c) 2015/4/20 CSDN博客 *All rights reserved. *文件名称:main.c *作 者:金叶 *完成日期:2015/4/20 *版本号:V1.0 *问题描述:简单银行系统的初步框架 *程序输出: */ /* 说明: 本程序在学习者仅掌握了基本数据类型和控制结构的前提下设计,模拟银行储蓄系统的基本功能。 在运行前,请建立文件password.txt,其中存储一个整数,表示密码。 建立文件balance.dat,其中存储一个数,表示余额。 运行结束后,对数据所做的所有修改均可以利用文件保存下来。 本程序进一步的改进: 1、银行应该是多用户,而绝不可以是单个的用户 2、应该要记录详细的业务过程 3、增加转帐、挂失等功能 4、密码的加密存储以及密码输入隐藏 5、在程序的结构方面,100多行程序放在main函数中,已经显得复杂了。 随着课程进展,我们将继续完善这个程序。 */ #include <stdio.h> #include <stdlib.h> int main() { int iChoose; //菜单选择 int iPass; //正确的密码 int iPassinflie; //文件中保存的密码 int iTry=0; //输入密码次数 int iNewpassword1,iNewpassword2; //改密码时要输入的新密码 double dMoney_all; //总余额 int dMoney_give,dMoney_save; //取款金额,存款金额(这个只能是整数 所以定为整型数) FILE *fp; //文件指针变量 printf("欢迎进入CSDN银行系统!\n\n"); if ((fp=fopen("password.txt","r"))==NULL){ printf("password file cannot open!"); exit(0); } fscanf(fp,"%d",&iPassinflie); fclose(fp); do { iTry++; printf("请输入您的银行卡密码:"); scanf("%d",&iPass); if (iPass!=iPassinflie){ printf("你输入的密码不正确,你已经输错%d次\n",iTry); } if (iTry>3){ printf("你已经输错3次,不能进去系统\n"); exit(0); } if (iPass==iPassinflie){ break; } } while (1); printf("亲爱的用户CSDN银行欢迎您!\n\n"); do { printf("请选择要使用的功能:\n"); printf("1.查询余额\n"); printf("2.取款\n"); printf("3.存款\n"); printf("4.修改密码\n"); printf("0.退出\n"); scanf("%d",&iChoose); switch (iChoose) { //查询余额 case 1: if ((fp=fopen("balance.dat","r"))==NULL){ printf("balance file cannot open!"); exit(0); } fscanf(fp,"%lf",&dMoney_all); printf("您可用余额为:%.2lf元\n\n\n",dMoney_all); fclose(fp); break; //取款 case 2: if ((fp=fopen("balance.dat","w"))==NULL){ printf("balance file cannot open!"); exit(0); } fscanf(fp,"%lf",&dMoney_all); do { printf("输入你的取款金额:"); scanf("%d",&dMoney_give); if ((dMoney_give%100)!=0){ printf("请输入100的倍数。\n"); //判断输入的是不是100的倍数 } else if (dMoney_all>dMoney_give){ dMoney_all-=dMoney_give; fprintf(fp,"%f",dMoney_all); printf("请拿好你的钱,注意小偷。\n\n"); break; } else{ printf("您的余额不足\n\n"); exit(0); } } while (1); fclose(fp); break; //存款 case 3: if ((fp=fopen("balance.dat","w"))==NULL){ printf("balance file cannot open!"); exit(0); } fscanf(fp,"%lf",&dMoney_all); do{ printf("输入你的存款金额:"); scanf("%d",&dMoney_save); if (dMoney_save%100!=0){ printf("请输入100的倍数。\n"); //判断输入的是不是100的倍数 } else { dMoney_all+=dMoney_save; fprintf(fp,"%f",dMoney_all); printf("您已存入%d元\n\n",dMoney_save); break; } } while (1); fclose(fp); break; //修改密码 case 4: if ((fp=fopen("password.txt","w"))==NULL){ printf("password file cannot open!"); exit(0); } fscanf(fp,"%d",&iPassinflie); printf("请输入新的密码:\n"); scanf("%d",&iNewpassword1); printf("请重复输入新的密码:\n"); scanf("%d",&iNewpassword2); if (iNewpassword1==iNewpassword2){ iPassinflie=iNewpassword1; fprintf(fp,"%d",iPassinflie); printf("密码修改完成。\n\n"); } else{ printf("你输入错误。\n"); //exit(0); } fclose(fp); break; //退出 case 0: exit(0); } } while (iChoose); return 0; }
入门级应该到了吧 哈哈
下面就要开始下一部分的学习了 加油!
相关文章推荐
- 提高第15课时,实践,简单银行系统的初步框架(加强版)v2.0
- 第12周项目4.1 银行系统的简单框架
- 简单的银行系统框架
- 第十二周项目四 银行系统 任务一 简单银行框架
- 第12周项目4银行系统的简单框架
- 实现一个简单的银行储蓄系统,承担活期用户的存款和取款业务 (只是初步的写出)
- 银行系统初步。。
- [iOS]简单的让Navigation框架视图支持系统右滑返回
- 一个简单的文件系统过滤驱动框架
- 银行系统加强版
- 黑马程序员_java_基础加强_模拟银行管理系统
- 通用.Net平台系统框架剖析与设计(简单概括)
- 通用.Net平台系统框架剖析与设计(简单概括)
- 12周。。。银行系统加强版
- 简单的银行系统
- FUSE(Filesystem in userspace)(用户空间文件系统),user-space框架简单介绍
- 简单网络系统框架Gearman
- 第十二周项目四银行系统任务一——搭一个框架
- [置顶] 某大型银行深化系统技术方案之二十一:框架机制
- python3开发进阶-Django框架学习前的小项目(一个简单的学员管理系统)