C语言及程序设计初步应用程序小设计-CSDN银行

来源:互联网 发布:财务报表数据库设计 编辑:程序博客网 时间:2024/05/19 20:43
#include <stdio.h>#include <stdlib.h>//C语言及程序设计初步,综合练习,CSDN银行,功能说明/* 1.输入密码进行登录(错误三次后退出程序),输入0-4选择不同功能,1-查询、2-取款,3-存款,4-改密码,0-退出.   2.只支持单个用户,密码和存款余额分别保存在本地两个文件中   3.取款功能支持超出额度提示.   4.修改密码需要输入两次新密码,先要输入原密码,如果原密码输入不正确,则立即退出。(安全性)   5.取款和存款操作需要加入确认提示,点击确认后才会继续操作,取消的话回退会上一级*/int main(){    long iMoney,iOut,iPut;    long iPass,iPass_file,iPass_change_old,iPass_change_new1,iPass_change_new2;    FILE *fp1,*fp2;    int iErr_count=1;    int flag=0,choice;    char choice_temp;    printf("欢迎使用CSDN银行\n");    fp1=fopen("passwd.dat","r");    fp2=fopen("money.dat","r");    fscanf(fp1,"%ld",&iPass_file);    fscanf(fp2,"%ld",&iMoney);    fclose(fp1);    fclose(fp2);    while(iErr_count<=3)    {        if(iErr_count==1)            printf("请输入密码:");        else            printf("密码错误,请再次输入密码: ");        scanf("%ld",&iPass);        if(iPass==iPass_file)            break;        else            iErr_count++;    }    if(iErr_count>3)    {        printf("错误三次,程序退出,该帐号锁定。\n");        exit(0);    }    while(flag==0)    {        printf("本行提供以下业务:\n");        printf("1.  查询.\n");        printf("2.  取款.\n");        printf("3.  存款.\n");        printf("4.  改密码.\n");        printf("0.  退出.\n");        printf("请选择需要办理的业务(1-4),按0退出");        scanf("%d",&choice);        switch(choice)        {            case 1:            {                printf("当前的存款余额为:%ld\n",iMoney);                break;            }            case 2:            {                printf("请输入需要取出的金额:");                scanf("%ld",&iOut);                printf("确认取出%ld元(输入n取消,任意键确认)\n",iOut);                choice_temp=getchar();//接收前一个字符串的\n                choice_temp=getchar();                if(choice_temp=='n'||choice_temp=='N')                    break;                if(iOut<=iMoney)                {                    iMoney-=iOut;                    printf("成功取出%ld元!\n",iOut);                }                else                {                    printf("余额不足!\n");                }                break;            }            case 3:            {                printf("请输入需要存入的金额:");                scanf("%ld",&iPut);                printf("确认存入%ld元(输入n取消,任意键确认)\n",iPut);                choice_temp=getchar();//接收前一个字符串的\n                choice_temp=getchar();                if(choice_temp=='n'||choice_temp=='N')                    break;                iMoney+=iPut;                printf("成功存入%ld元!\n",iPut);                break;            }            case 4:            {                iErr_count=1;                while(iErr_count<=3)                {                    if(iErr_count==1)                        printf("请输入原密码:");                    else                        printf("密码错误,请再次输入原密码: ");                    scanf("%ld",&iPass_change_old);                    if(iPass_change_old==iPass)                            break;                    else                        iErr_count++;                }                if(iErr_count>3)                {                    printf("错误三次,程序退出,该帐号锁定。\n");                    exit(0);                }                printf("校验通过,请输入新密码:");                scanf("%ld",&iPass_change_new1);                printf("请再次输入新密码:");                scanf("%ld",&iPass_change_new2);                while(iPass_change_new1!=iPass_change_new2)                {                    printf("两次结果不一致,请重新输入!\n");                    printf("校验通过,请输入新密码:");                    scanf("%ld",&iPass_change_new1);                    printf("请再次输入新密码:");                    scanf("%ld",&iPass_change_new2);                }                iPass=iPass_change_new1;                printf("修改密码成功!\n");                break;            }            case 0:            {                flag=1;                break;            }            default:            {                printf("输入错误,请重新输入!\n");            }        }    }    fp1=fopen("passwd.dat","w");    fp2=fopen("money.dat","w");    fprintf(fp1,"%ld",iPass);    fprintf(fp2,"%ld",iMoney);    fclose(fp1);    fclose(fp2);    printf("谢谢您的使用,欢迎下次光临!\n");    return 0;}

0 0
原创粉丝点击