C语言:银行储蓄系统的开发(初级)

来源:互联网 发布:知乎首页 编辑:程序博客网 时间:2024/06/04 18:23

任务代码:

#include <stdio.h>#include <stdlib.h>int main(){   printf("欢迎来到鄞州银行!\n\n");   /*变量定义*/   int iPass;//用户输入的密码   int iPassinFile;//用户储存在文档中的密码   int iNewPass1,iNewPass2;//新密码   int iTry_num=0;//进入系统时尝试的次数   double dBalance; //账户余额   double dMoney;  //存取款金额   int iChoice;   //用于选择系统功能   FILE *fp;//文件指针    /*从已有文件中读入密码*/    fp=fopen("password.txt","r");    if(fp==NULL)    {        printf("passwordfile cannot open!");        exit(0);    }    fscanf(fp,"%d",&iPassinFile);    fclose(fp);   /*进入系统,密码三次不对将退出  */   do   {     iTry_num++;     printf("请输入密码:");     scanf("%d",&iPass);     if(iPassinFile==iPass)     {        break; //成功     }else     {        if(iTry_num>2)        {          printf("超过3次,锁死!请联系营业人员\n");          exit(1);        } else        {        printf("密码错误请重新输入密码!还有%d次机会!\n",3-iTry_num);        }     }   }while(1);    /*从文件中获取余额*/    if ((fp=fopen("balance.dat", "r"))==NULL)    {        printf("data file cannot open!");        exit(0);    }    fscanf(fp, "%lf", &dBalance);    fclose(fp);    /*业务办理*/    do    {        printf("\n您可以办理下面的业务:\n");        printf("  1.查询\n  2.取款\n  3.存款\n  4.改密码\n  0.退出\n请输入(0-4):");        scanf("%d", &iChoice);        switch(iChoice)        {        case 1:            printf("您的余额有%.2lf元. \n",dBalance);            break;        case 2:            printf("输入取款金额: ");            scanf("%lf", &dMoney);            if(dBalance>dMoney)            {                dBalance-=dMoney;                printf("取款后,您还有%.2lf元. \n",dBalance);            }            else                printf("余额不足,取款失败. \n");            break;        case 3:            printf("输入存款额: ");            scanf("%lf", &dMoney);            dBalance+=dMoney;            printf("存款后,您有%.2f元. \n",dBalance);            break;        case 4:            printf("请输入新密码:");            scanf("%d", &iNewPass1);            printf("再输入新密码:");            scanf("%d", &iNewPass2);            if(iNewPass1==iNewPass2)            {                iPassinFile= iNewPass1;                printf("密码修改成功,请注意保密.\n");            }            else                printf("两次输入不一致,密码修改失败.\n");            break;        case 0:            printf("欢迎您再来. \n");            break;        }    }while(iChoice);    /*保存余额(可能用户没有改变金额,只做查询)*/    if((fp=fopen("balance.dat","w"))==NULL)    {        printf("data file cannot open!");        exit(0);    }    fprintf(fp,"%lf",dBalance);//写出保存后的账户金额    fclose(fp);    /*保存密码(可能用户没有改变密码)*/    if((fp=fopen("password.txt","w"))==NULL)    {        printf("password file cannot open !");        exit(0);    }    fprintf(fp,"%d",iPassinFile);    fclose(fp);   return 0;}

执行情况:


知识总结:

密码还停留在数字阶段,后面数组学了之后可以做字符串数组

心得体会:


阅读全文
0 0
原创粉丝点击