⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 withdraw.c

📁 银行管理系统
💻 C
字号:

#include<stdio.h>
#include<string.h>
#include<time.h>
#include<ctype.h>
#include<stdlib.h>
#define ok 1
#define fa    -1
typedef int status ;

typedef struct accoutMaker
{
    char ch[13];
    //   账号的12前位
    long int lastNum ;
    //后几位
    int total ;
    //开户数
}
accoutMaker,*accoutMakerp ;
typedef struct accout
{
    char name[20];
    //账号持有人姓名
    char ch[20];
    //账号
 long int  totalMoney ;
    //钱数
    char id[19];
    //身份证号
    char passwords[7];
    int tag ;
    //账号密码
}
accout,*accoutp ;

status saving()
{
     FILE*rsa ;
    FILE*rpa ;
    FILE*rrs ;
    //添加个人纪录
    FILE*rrp ;
    //添加系统纪录
    char accoutNun[20];
    char id[19];
    char passwords[7];
  int  money;
    int i,j ;
    accoutMaker curr ;
    accoutp canAcc ;
    struct tm*local ;
    time_t tm ;
    char fname[25];
    char temmode[5]=
    {
        ".txt"
    }
    ;
    ////
    rsa=fopen("systemAccout","rb+");
    fread(&curr,sizeof(accoutMaker),1,rsa);
    rpa=fopen("personAccout","rb+");
    canAcc=(accoutp)malloc((curr.total)*sizeof(accout));
    for(i=0;i<curr.total;i++)
    {
        fread(&canAcc[i],sizeof(accout),1,rpa);
    }

    loop1 :
    {
        printf("输入账户号\n");
        scanf("%s",accoutNun);
        loop2 :
        {

            printf("你的密码\n");
            scanf("%s",passwords);
        }
    }
    for(i=0;i<curr.total;i++)
    {
        if(strcmp(accoutNun,canAcc[i].ch)==0)
        {
            break ;
        }
        ////

    }
    j=i ;



     if(j<curr.total)
    {    if( canAcc[j].tag==2){printf("此账户已挂失\n");return fa; }
        strcpy(fname,accoutNun);

        if(strcmp(canAcc[j].passwords,passwords)==0)
        {
            if(canAcc[j].totalMoney>0)
        {
            printf("你的账户中还有余额: %d\n",canAcc[j].totalMoney);

        }

      loop3:{  printf("请输入取钱数\n");
        scanf("%d",&money); }
        if(money>canAcc[j].totalMoney){printf("你取钱超过你 的存款,请从新输入\n");goto loop3;   }
        canAcc[j].totalMoney=canAcc[j].totalMoney-money;

        }
        else
        {
            printf("你输入的信息有误请重新确认密码\n");
            goto loop2 ;
        }
        fclose(rpa);
        rpa=fopen("personAccout","rb+");
        //////
        for(i=0;i<curr.total+1;i++)
        {
        fwrite(&canAcc[i],sizeof(accout),1,rpa);
        }

        tm=time(NULL);
        local=localtime(&tm);
        rrs=fopen("systemRecording.txt","a");
        fprintf(rrs,"\n\n%s账户%s取钱:%d\n\n",asctime(local),accoutNun,money);
        strcat(fname,temmode);
        rrp=fopen(fname,"a");
        fprintf(rrp,"\n\n%s该账户取钱:%\n\n",asctime(local),money);
        fclose(rrs);
        fclose(rrp);
        fclose(rpa);
        fclose(rsa);
    }
        else
    {
        printf("不存在该账户!!\n");
        goto loop1 ;
    }


    return ok ;
    }


   main()
{
    if(saving()==1)printf("取钱成功\n");
    else printf("取钱失败\n");
    getch();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -