综合实践——银行储蓄系统

本文介绍了如何开发一个银行储蓄系统,包括开户、存款、取款、转账、改密、挂失、解挂和销户等功能。系统设计了账户状态管理,如正常、挂失和销户,以及密码的安全输入与修改。同时,对账户结构和数据库文件进行了需求分析。
摘要由CSDN通过智能技术生成

一、 问题描述

模拟银行柜台业务的要求,实现一个小型的“银行储蓄系统”软件的开发,其中包括开户、存

款、取款、转帐、改密、挂失、解挂、销户等功能。各功能的要求分别为:

开户:增加一个银行账户,输入账号、姓名、密码、金额,状态自动置为 0(正常)。

建议输入密码的过程中,以星号(*)代替实际的输入的符号显示出来

存款:输入账号、金额,增加该账号的余额。

取款:输入账号、金额,减少取款后的余额。要求取款额不能超过原余额。

查询:输入账号,显示账户信息。

转账:输入转出的账号、金额以及转入的账户,减少转出账号的余额,增加转入账号

的余额。要求转出账户的金额不能超过该账号的余额,转出减少的金额,与转入账户

增加的金额相同。

挂失:输入账号,将其状态改变为 1(挂失)。处于挂失状态的账号,不能执行除解挂

以外的其他任何操作。

解挂:输入账号,将状态为 1(挂失)的账户的状态改为 0(正常)。

销户:输入账号,确认后,提示将余额全部取完,将余额置 0,并将状态 state 置为 2

(销户)。办理销户后的账号,不能再执行除查询以外的功能。

改密:用新密码替代旧密码。新密码要求输入两次,一致后才确认改密成功。

二、 需求分析

  输入密码的过程中,以星号(*)代替实际的输入的符号显示出来。

新密码要求输入两次,一致后才确认改密成功。

账户结构设计 ,数据库文件。

代码:

#include<stdio.h>
#include<stdlib.h>
#include <conio.h>//getch头文件
#include<string.h>
#define MAX 10000;
FILE *fp;   //文件名
void opAccount();   //开户
void saveMoney();   //储蓄
void getMoney();    //取款
void toMoney();     //转账
void  search();     // 查询
void    noLost();    //解挂
void  Lost();       //挂失
void noAccount();   //销户
void password();    //改密
void drop();        //退出
void main_menu();   //主菜单
int readData();     //读文件
int writeData();    //写文件
int setpassword();    //改密处理
int deal();           //判断
struct Data
{
    int card;        //账号
    char name[10];   //姓名
    int pwd;         //密码
    double money;    //金额
    int state;       //状态
}data[100];
int count=0;            //账号个数
int main()
{
    readData();//读文件
    main_menu();
    writeData();//写文件
}
void drop()       //退出程序
{
   printf("|+------------------------------+|\n");
   printf("|  欢迎下次使用储蓄综合业务平台  |\n");
   printf("|+------------------------------+|\n");
}
void main_menu()
{
    int choic_number; //命令选择
    printf("+---------欢迎使用储蓄系统---------+\n");
    printf("|  0.开户            5.挂失        |\n");
    printf("|  1.存款            6.解挂        |\n");
    printf("|  2.取款            7.销户        |\n");
    printf("|  3.查询            8.改密        |\n");
    printf("|  4.转账            9.退出        |\n");
    printf("+----------------------------------+\n");
    printf("请输入操作指令:");
    scanf("%d",&choic_number);
    switch(choic_number)
    {
        case 0:
            opAccount(); break;
        case 1:
            saveMoney(); break;
        case 2:
              getMoney();  //取款
              break;
        case 3:
            search();
            break;
        case 4:
                toMoney();
            break;
        case 5:
            Lost();     //挂失
            break;
        case 6:
            noLost(); //解挂
            break;
        case 7
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值