C语言课设之 银行管理系统

来源:互联网 发布:只有我不在的街道知乎 编辑:程序博客网 时间:2024/06/07 06:08
# include <stdio.h># include <string.h># include <stdlib.h># include <math.h># define N 100# define shoujifei 100# define dianfei 90# define meiqifei 80# define shuifei   70int num;struct Account{    int id;//帐号id设置为8位    int pwd;//密码为6位    double money;//余额    double rate;  //利率    char name[20];}people[N];void chaxun(int n){    printf("                                 账号:     %d\n",people[n].id);    printf("                                 余额:     %.2lf\n",people[n].money);    printf("                                 开户银行: %s\n",people[n].name);}void xiugai(int n){    int pass1,pass2;    bool flag=false;    while(!flag)    {    printf("                                 请输入要修改的密码:");    scanf("%d",&pass1);    printf("                                 请再次输入要修改的密码:");    scanf("%d",&pass2);    if(pass1==pass2)    {        printf("                                 密码修改成功!\n");        people[n].pwd=pass1;        flag=true;    }    else    {        printf("                                 两次输入不一致,请重新输入密码!\n");    }    }}void zhuce(){         num++;    int id1,id2;    int pass1,pass2;    bool flag=true;    while(flag)    {    printf("                                 请输入注册用户账号:\n                                 ");    scanf("%d",&id1);    printf("                                 请再次输入注册用户账号:\n                                 ");    scanf("%d",&id2);    if(id1==id2)    {        people[num].id=id1;        flag=false;    }    else    {        printf("                                 两次输入不一致,请重新输入!\n");    }    }    flag=true;    while(flag)    {         printf("                                 请输入6位密码:\n                                 ");         scanf("%d",&pass1);         printf("                                 请再次输入6位密码:\n                                 ");         scanf("%d",&pass2);         if(pass1==pass2)         {             people[num].pwd=pass1;             flag=false;         }         else            printf("                                 两次输入不一致,请重新设置密码!\n");    }         printf("                                 存款金额:\n                                 ");         scanf("%lf",&people[num].money);         printf("                                 利率:\n                                 ");         scanf("%lf",&people[num].rate);         printf("                                 开户银行:\n                                 ");         scanf("%s",people[num].name);}int  jiaofei(int n){    int s;    while(1)    {        printf("                                 电费缴纳请按 1\n");        printf("                                 水费缴纳请按 2\n");        printf("                               煤气费缴纳请按 3\n");        printf("                               手机费缴纳请按 4\n");        printf("                                 结束缴费请按 5\n");        printf("                                 ");        scanf("%d",&s);        switch(s)        {            case 1: printf("                                 电费缴费成功\n");                    if(people[n].money<dianfei){printf("                                 余额不足!缴费失败!\n");}                     else people[n].money-=dianfei;                     break;            case 2: printf("                                 水费缴费成功\n");                   if(people[n].money<shuifei){printf("                                 余额不足!缴费失败!\n");}                    else people[n].money-=shuifei;                    break;            case 3: printf("                                 煤气费缴费成功\n");                    if(people[n].money<meiqifei)printf("                                 余额不足!缴费失败!\n");                    else people[n].money-=meiqifei;break;            case 4: printf("                                 手机缴费成功\n");            if(people[n].money<shoujifei)printf("                                 余额不足!缴费失败!\n");            else  people[n].money-=shoujifei;break;            case 5: goto A;            default: printf("                                 输入错误,请重新输入选项!\n");        }        printf("\n");    }    A: return 0;    return 0;}void zhuanzhang(int n){    bool flag1=false;    double money;    int id1,id2;    int i;    bool flag=true;    while(flag)    {   C: printf("                                 请输入转账用户:\n                                 ");    scanf("%d",&id1);    for(i=1;i<=num;i++)           if(id1==people[i].id)              {                  flag1=true;              }    if(!flag1)              {                  printf("                                 该用户不存在!请重新输入\n");                  goto C;              }    printf("                                 请再次输入转账用户:\n                                 ");    scanf("%d",&id2);    if(id1==id2)    {        for(i=1;i<=num;i++)           if(id1==people[i].id)                  break;    D:printf("                                 请输入金额:\n                                 ");    scanf("%lf",&money);    if(money>people[n].money)    {        printf("                                 您的余额不足,请重新输入!\n");        goto D;    }    people[i].money+=money;    people[n].money-=money;    flag=false;    printf("                                 转账成功!\n");    }    else    {        printf("                                 两次输入不一致,请重新输入转账账号!\n");    }    }}int  denglu(){    int pass;    int id;    int i;    int n;    printf("                                 请输入账号:\n                                 ");    scanf("%d",&id);    for(i=1;i<=num;i++)        if(id==people[i].id)        break;    printf("                                 请输入密码:\n                                 ");    scanf("%d",&pass);    while(pass!=people[i].pwd)    {        printf("                                 密码输入错误!请重新输入:\n");         printf("                                 ");         scanf("%d",&pass);    }        printf("                                 登陆成功!\n");    while(1)    {        printf("                                 修改功能请按 1\n");        printf("                                 转账功能请按 2\n");        printf("                                 缴费功能请按 3\n");        printf("                                 信息查询请按 4\n");        printf("                                     退出请按 5\n");        printf("                                 ");        scanf("%d",&n);        switch(n)        {            case 1: xiugai(i);break;            case 2: zhuanzhang(i); break;            case 3: jiaofei(i);break;            case 4: chaxun(i);break;            case 5: printf("                                 谢谢使用!\n\n");goto B;            default: printf("                                 输入错误请重新输入选项:\n");        }        printf("\n");    }    B: return 0;    return 0;}void action(){    int n;    while(1)    {        printf("                                 注册请按 1\n");        printf("                                 登陆请按 2\n");        printf("                                 退出请按 3\n");        printf("                                 ");        scanf("%d",&n);        switch(n)        {            case 1:zhuce(); break;            case 2:denglu();break;            case 3:printf("                                 谢谢使用!\n");exit(0);            default:printf("                                 输入错误请重新输入:");        }    }}int main(void){   action();   return 0;}

0 0
原创粉丝点击