为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

ATM取存款机

2018-01-06 40页 doc 82KB 6阅读

用户头像

is_650122

暂无简介

举报
ATM取存款机ATM取存款机 #include<stdio.h> /*引用库函数*/ #include<stdlib.h> #include<string.h> #include<conio.h> #include<time.h> #define ZHANGHUSHU 10 /*宏定义*/ #define JIAOYISHU 20 /*结构体定义*/ 义结构体JiaoYi*/ struct JiaoYi /*定 { char shijian[50]; /*结构体...
ATM取存款机
ATM取存款机 #include<stdio.h> /*引用库函数*/ #include<stdlib.h> #include<string.h> #include<conio.h> #include<time.h> #define ZHANGHUSHU 10 /*宏定义*/ #define JIAOYISHU 20 /*结构体定义*/ 义结构体JiaoYi*/ struct JiaoYi /*定 { char shijian[50]; /*结构体成员*/ char leixing[5]; /*结构体成员*/ float jine; /*结构体成员*/ float yue; /*结构体成员*/ }; struct ZhangHu /*定义结构体ZhangHu*/ { char zhanghao[15]; /*结构体成员*/ char xingming[11]; /*结构体成员*/ char shenfengzheng[20]; /*结构体成员*/ char mima[7]; /*结构体成员*/ float yue; /*结构体成员*/ int jiaoyishu; /*结构体成员*/ struct JiaoYi jiaoyi[JIAOYISHU];/*成员 jiaoyi[JIAOYI]属于struct JiaoYi 类型*/ }; struct ZhangHu zhanghu[ZHANGHUSHU];/*成员 zhanghu[ZHANGHUSHU]属 于struct ZhangHu 类型*/ int zhanghushu=0; /*定义变量并赋初值0*/ int dangqianzhanghuxiabiao; /******************************************************************* *************/ /*函数声明*/ int zhucaidan(); /*声明主菜单函数*/ void zhuce(); /*声明注册函数*/ void denglu(); /*声明登录函数*/ void baocun(); /*声明保存函数*/ void cunkuan(); /*声明存款函数*/ void qukuan(); /*声明取款函数*/ void zhuanzhang(); /*声明转账函数*/ void chaxun(); /*声明查询函数*/ void xiugaimima(); /*声明修改密码函数*/ int chaxuncaidan(); /*声明查询菜单函数*/ void chaxunyue(); /*声明查询余额函数*/ void chaxuncunkuanjilu(); /*声明查询存款记录函数*/ void chaxunqukuanjilu(); /*声明查询取款记录函数*/ void chaxunzhuanzhangjilu(); /*声明查询转账函数*/ void chaxunsuoyoujilu(); /*声明查询所有记录函数*/ void dakai(); /*声明打开函数*/ void chaxunchongzhijilu(); /*声明查询充值记录函数*/ void jiami(); /*声明加密函数*/ void jiemi(); /*声明解密函数*/ void xianshidangqianjiaoyi(int i); /*声明显示当前交易函数*/ /******************************************************************* ************/ /*主函数*/ void main() { textbackground(RED); textcolor(YELLOW); clrscr(); dakai(); for(;;) { switch(zhucaidan()) /*选择判断*/ { case 1: zhuce(); /*调用zhuce()函数*/ break; case 2: denglu(); /*调用denglu()函数*/ break; case 3: baocun(); /*调用baocun()函数*/ break; case 0: textbackground(BLUE); textcolor(YELLOW); clrscr(); printf("\n\n\n\t\t\t欢迎使用ATM存取款一体机,谢谢~\n"); /*结束 程序*/ printf("\t\t\t"); return; } } } /******************************************************************* ************/ /*菜单函数*/ int zhucaidan()/*主菜单*/ { char c; do{ system("cls"); /*每次选择运行前清屏*/ textbackground(BLUE); textcolor(YELLOW); clrscr(); printf("\t\t ****ATM存取款一体机系统菜单****\n\n"); /*菜单选择*/ \n"); printf("\t\t *| 1. 注册 | printf("\t\t *| 2. 登录 |\n"); printf("\t\t *| 3. 保存 |\n"); printf("\t\t *| 0. 退出 |\n"); printf("\t\t********************************\n"); printf("\t\t\t请作出选择(0-3):"); c=getchar(); /*读入选择*/ }while(c<’0’||c>’3’); return(c-’0’); /*c变为空后返回重新选择*/ } void xianshidangqianjiaoyi(int i) { printf("\t\t交易时间\t\t金额\t\t余额\t\t类型\n"); printf("\t%30s\t%10.2fs\t\t%10.2f\t\t%5s\n",zhanghu[dangqianzhanghu xiabiao].jiaoyi[i].shijian, zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].jine, zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].yue,zhanghu[dangqianzhanghuxiabiao]. jiaoyi[i].leixing); getch(); } int caozuocaidan()/*操作菜单*/ { char c; do{ system("cls"); /*每次选择运行前清屏*/ textbackground(BLUE); textcolor(YELLOW); clrscr(); \n\n"); /*菜单选择*/ printf("\t\t\t*********欢迎你~********* printf("\t\t *| 1. 存款 |\n"); printf("\t\t *| 2. 取款 |\n"); printf("\t\t *| 3. 转账 |\n"); printf("\t\t *| 4. 查询 |\n"); printf("\t\t *| 5. 修改密码 |\n"); printf("\t\t *| 6. 手机充值 |\n"); printf("\t\t *| 0. 退出 |\n"); printf("\t\t****************************\n"); -6):"); printf("\t\t\t请作出选择(0 c=getchar(); /*读入选择*/ }while(c<’0’||c>’6’); return(c-’0’); /*c变为空后返回重新选择*/ } int chaxuncaidan()/*查询菜单*/ { char c; do{ system("cls"); /*每次选择运行前清屏*/ textbackground(BLUE); textcolor(YELLOW); clrscr(); printf("\t\t ***********欢迎你~***********\n\n"); /*菜单选择*/ printf("\t\t *| 1. 查询余额 |\n"); printf("\t\t *| 2. 查询存款记录 |\n"); printf("\t\t *| 3. 查询取款记录 |\n"); printf("\t\t *| 4. 查询转账记录 |\n"); printf("\t\t *| 5. 查询所有记录 |\n"); printf("\t\t *| 6. 查询充值记录 |\n"); printf("\t\t *| 0. 返回 |\n"); printf("\t\t*******************************\n"); printf("\t\t\t请作出选择(0-6):"); c=getchar(); /*读入选择*/ }while(c<’0’||c>’6’); return(c-’0’); /*c变为空后返回重新选择*/ } /******************************************************************* ************/ */ /*函数定义 void cunkuan()/*定义存款函数*/ { int i; float cunkuanjine; int jiaoyixiabiao; char t[30]; char sign; time_t rawtime; struct tm *timeinfo; time(&rawtime); timeinfo=localtime(&rawtime); strcpy(t,asctime(timeinfo)); for(i=0;i<strlen(t);i++) if(t[i]==‘\n’) { t[i]==‘\0’; break; } printf("\n\n\t提示:存款金额不能超过1000元且要为50或100的面 额!\n"); printf("\n\n\t\t\t请输入存款金额:"); scanf("%f",&cunkuanjine); if(cunkuanjine<0||cunkuanjine>1000||(int)cunkuanjine%50!=0) { printf("\n\n\t\t\t金额不符合要求,请重新选择~\n"); sleep(3); return; } else { jiaoyixiabiao=zhanghu[dangqianzhanghuxiabiao].jiaoyishu; strcpy(zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].shijian,t); strcpy(zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].leixing,"存款 "); zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].jine=cunkuanjine; zhanghu[dangqianzhanghuxiabiao].yue+=cunkuanjine; zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].yue=zhanghu[dangqianzha nghuxiabiao].yue; zhanghu[dangqianzhanghuxiabiao].jiaoyishu++; printf("\n\n"); printf("\t\t\t你本次存款金额为:%.2f\n",cunkuanjine); printf("\t\t\t你当前的余额 为:%.2f\n",zhanghu[dangqianzhanghuxiabiao].yue); printf("\t\t\t存款成功~\n\t\t\t"); if((int)zhanghu[dangqianzhanghuxiabiao].yue>=3000) { system("pause"); textbackground(RED); textcolor(YELLOW); clrscr(); printf("\n\n\t\t\t尊敬的用户,你好~\n\t你的金额达到VIP会员,你可以成为我们的会员\n"); printf("\t\t\t是否想加入会员(Y或N)"); scanf("\t\t\t%c",&sign); while(sign==‘n’||sign==‘N’) {printf("\t\t\t你选择放弃加入会员~谢谢~");sleep(3);return;} while(sign==‘y’||sign==‘Y’) {printf("\t\t\t你选择加入会员~谢谢合作~");sleep(3);return;} } system("pause"); } } void qukuan()/*定义取款函数*/ { int i; float qukuanjine; int jiaoyixiabiao; char t[30]; time_t rawtime; struct tm *timeinfo; time(&rawtime); timeinfo=localtime(&rawtime); strcpy(t,asctime(timeinfo)); for(i=0;i<strlen(t);i++) if(t[i]==‘\n’) { t[i]==‘\0’; break; } printf("\n\n\t提示:取款金额不能超过1000元且要为50或100的面 额!\n"); printf("\n\n\t\t\t你当前的余额 为:%.2f",zhanghu[dangqianzhanghuxiabiao].yue); printf("\n\n\t\t\t 请输入取款金额:"); scanf("%f",&qukuanjine); if(qukuanjine>zhanghu[dangqianzhanghuxiabiao].yue) { printf("\n\n抱歉,余额不足,无法取款~\n"); sleep(3); return; } if(qukuanjine<0||qukuanjine>1000||(int)qukuanjine%50!=0) { printf("\n\n\t\t\t金额不符合要求,请重新选择~\n"); sleep(3); return; } else { jiaoyixiabiao=zhanghu[dangqianzhanghuxiabiao].jiaoyishu; strcpy(zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].shijian,t); strcpy(zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].leixing,"取款 "); zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].jine=qukuanjine; zhanghu[dangqianzhanghuxiabiao].yue-=qukuanjine; zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].yue=zhanghu[dangqianzha nghuxiabiao].yue; zhanghu[dangqianzhanghuxiabiao].jiaoyishu++; printf("\n\n"); printf("\t\t\t你本次取款金额为:%.2f\n",qukuanjine); printf("\t\t\t你当前的余额 为:%.2f\n",zhanghu[dangqianzhanghuxiabiao].yue); printf("\t\t\t取款成功~\n"); system("pause"); } } void zhuanzhang()/*定义转账函数*/ { int i=0,n,suozhuanzhanghuxiabiao; int jiaoyixiabiao; float zhuanzhangjine; char zhanghao1[12]; char t[30]; time_t rawtime; struct tm *timeinfo; time(&rawtime); timeinfo=localtime(&rawtime); strcpy(t,asctime(timeinfo)); for(n=0;n<strlen(t);n++) if(t[n]==‘\n’) { t[n]==‘\0’; break; } do{ printf("\n\n\t提示:转账金额不能超过你当前余额且要为50或100的面额!\n"); printf("\n\n\t\t\t你当前的余额为:%.2f",zhanghu[dangqianzhanghuxiabiao].yue); printf("\n\n\t\t\t请输入对方账号:"); scanf("%s",zhanghao1); while(strcmp(zhanghao1,zhanghu[i].zhanghao)!=0&&i<zhanghushu) i++; if(i==dangqianzhanghuxiabiao) { printf("\t\t\t该帐号为你自己的帐号,无法转账!\n"); sleep(2); return; } if(i==zhanghushu) { printf("\t\t\t该账号不存在,无法转账!\n"); sleep(2); return; } suozhuanzhanghuxiabiao=i; break; }while(1); do{ printf("\n\n\t\t\t请输入转账金额:"); scanf("%f",&zhuanzhangjine); if(zhuanzhangjine>zhanghu[dangqianzhanghuxiabiao].yue) { printf("\n\n抱歉,余额不足,无法转账!\n"); sleep(3); return; } else if(zhuanzhangjine<0||(int)zhuanzhangjine%50!=0||zhuanzhangjine>10000) { printf("\n\n\t\t\t金额不符合要求,请重新输入~\n"); sleep(2); system("cls"); textbackground(BLUE); textcolor(YELLOW); clrscr(); \n\n"); printf("\t\t ****ATM存取款一体机系统菜单**** } else break; }while(1); jiaoyixiabiao=zhanghu[dangqianzhanghuxiabiao].jiaoyishu; strcpy(zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].shijian,t); strcpy(zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].leixing,"转出 "); zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].jine=zhuanzhangjine; zhanghu[dangqianzhanghuxiabiao].yue-=zhuanzhangjine; zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].yue=zhanghu[dangqianzhanghuxiabiao].yue; zhanghu[dangqianzhanghuxiabiao].jiaoyishu++; jiaoyixiabiao=zhanghu[suozhuanzhanghuxiabiao].jiaoyishu; strcpy(zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].shijian,t); strcpy(zhanghu[i].jiaoyi[jiaoyixiabiao].leixing,"转入"); zhanghu[suozhuanzhanghuxiabiao].jiaoyi[jiaoyixiabiao].jine=zhuanzhangjine; zhanghu[suozhuanzhanghuxiabiao].yue+=zhuanzhangjine; zhanghu[suozhuanzhanghuxiabiao].jiaoyi[jiaoyixiabiao].yue=zhanghu[suozhuanzha nghuxiabiao].yue; zhanghu[suozhuanzhanghuxiabiao].jiaoyishu++; printf("\t\t\t转账成功~\n"); printf("\t\t\t所转金额:%.2f",zhuanzhangjine); printf("\n\t\t\t你当前的余额 为:%.2f\n",zhanghu[dangqianzhanghuxiabiao].yue); system("pause"); } void chaxun()/*定义查询函数*/ { for(;;) { switch(chaxuncaidan()) /*选择判断*/ { case 1: chaxunyue(); break; case 2: chaxuncunkuanjilu(); break; case 3: chaxunqukuanjilu(); break; case 4: chaxunzhuanzhangjilu(); break; case 5: chaxunsuoyoujilu(); break; case 6: chaxunchongzhijilu(); break; case 0: return; } } } void xiugaimima()/*定义修改密码函数*/ { int i; char xinmima1[7],xinmima2[7]; textbackground(BLUE); textcolor(YELLOW); clrscr(); printf("\n\n\t\t**********你正在修改密码**********"); printf("\n\n\t\t\t请输入新密码:"); i=0; do{ xinmima1[i++]=getch();/*输入新密码并保存在变量xinmima1*/ printf("*"); }while(i<6); xinmima1[6]=‘\0’; printf("\n\n\t\t\t请再次输入新密码:"); i=0; do{ xinmima2[i++]=getch();/*再次输入新密码并保存在变量xinmima2*/ printf("*"); }while(i<6); xinmima2[6]=‘\0’; if(strcmp(xinmima1,xinmima2)==0) { strcpy(zhanghu[dangqianzhanghuxiabiao].mima,xinmima1);/*用新密码覆盖旧密码*/ printf("\n\t\t\t修改成功~"); sleep(3); return; } else printf("\n\t\t两次输入不一致,修改失败~"); sleep(3); return; } void shoujichongzhi() { int n; int jiaoyixiabiao; float chongzhijine; char shoujihao[12]; char t[30]; time_t rawtime; struct tm *timeinfo; time(&rawtime); timeinfo=localtime(&rawtime); strcpy(t,asctime(timeinfo)); for(n=0;n<strlen(t);n++) if(t[n]==‘\n’) { t[n]==‘\0’; break; } do{ printf("\t\t\t请输入手机号:\n\t\t\t"); scanf("%s",&shoujihao); if(strlen(shoujihao)!=11) printf("\t\t手机号输入有误,必须为11位,请重新输入~\n"); else break; }while(1); do{ printf("\t\t\t你当前的余额 为:%.2f\n",zhanghu[dangqianzhanghuxiabiao].yue); printf("\t\t请输入充值金额(充值金额需为50的整数倍!):\n\t\t\t"); scanf("%f",&chongzhijine); if(chongzhijine>zhanghu[dangqianzhanghuxiabiao].yue) { printf("\t\t\t余额不足,无法充值~\n"); sleep(2); return; } else if((int)chongzhijine%50!=0) printf("\t\t\t输入金额有误~\n"); else break; }while(1); jiaoyixiabiao=zhanghu[dangqianzhanghuxiabiao].jiaoyishu; strcpy(zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].shijian,t); strcpy(zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].leixing,"充值"); zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].jine=chongzhijine; zhanghu[dangqianzhanghuxiabiao].yue-=chongzhijine; zhanghu[dangqianzhanghuxiabiao].jiaoyi[jiaoyixiabiao].yue=zhanghu[dangqianzha nghuxiabiao].yue; zhanghu[dangqianzhanghuxiabiao].jiaoyishu++; printf("\t\t\t充值成功~请查收~\n\t\t\t"); system("pause"); return; } void xianshizhanghu()/*定义显示注册成功的账户的信息*/ { int i=zhanghushu; printf("\t姓名\t帐号\t身份证\t\t\t密码\t余额\t交易数\n"); printf("\t%s\t%s\t%s\t%s\t%.2f\t%d\n",zhanghu[i].xingming,zhanghu[i] .zhanghao, zhanghu[i].shenfengzheng,zhanghu[i].mima,zhanghu[i].yue,zhanghu[i].jiaoyishu); } void zhuce()/*定义注册函数*/ { char sign; int i; textbackground(GREEN); textcolor(YELLOW); clrscr(); while(sign!=‘n’&&sign!=‘N’) /*判断*/ { int n; char mima2[7]; char p[2]={NULL}; system("cls"); textbackground(GREEN); textcolor(YELLOW); clrscr(); printf("\t\t ****ATM存取款一体机系统菜单****\n\n"); printf("\n\t\t\t现在你可以开始注册\n"); do{ n=zhanghushu; if(n>=0&&n<=9) { printf("\n\t\t\t你的账号为:6227 0038 00%d\n",n); n=zhanghushu+’0’; p[0]=n; p[1]=‘\0’; strcpy(zhanghu[zhanghushu].zhanghao,"6227003800"); strcat(zhanghu[zhanghushu].zhanghao,p); sleep(3); break; } else if(n>=10&&n<=99) { printf("\n\t\t\t你的账号为:6227 0038 0%d\n",n); n=zhanghushu+’0’; p[0]=n; p[1]=‘\0’; strcpy(zhanghu[zhanghushu].zhanghao,"622700380"); strcat(zhanghu[zhanghushu].zhanghao,p); sleep(3); break; } }while(1); fflush(stdin); /*以下都为清除多余的输入*/ system("cls"); textbackground(GREEN); textcolor(YELLOW); clrscr(); printf("\t\t ****ATM存取款一体机系统菜单****\n\n"); printf("\n\t\t\t现在你正在注册!\n"); printf("\n\t\t\t请输入姓名:\n"); printf("\t\t\t"); scanf("\t\t\t%s",&zhanghu[zhanghushu].xingming); fflush(stdin); /*以下都为清除多余的输入*/ system("cls"); textbackground(GREEN); textcolor(YELLOW); clrscr(); printf("\t\t ****ATM存取款一体机系统菜单****\n\n"); printf("\n\t\t\t现在你正在注册!\n"); do { printf("\n\t\t\t请输入身份证号:\n"); printf("\t\t\t"); scanf("\t\t\t%s",&zhanghu[zhanghushu].shenfengzheng); if((strlen(zhanghu[zhanghushu].shenfengzheng)==15)|| (strlen(zhanghu[zhanghushu].shenfengzheng)==18)) break; else printf("\n\t\t身份证位数必须是15或18位,请重新输入~\n"); }while(1); do { system("cls"); textbackground(GREEN); textcolor(YELLOW); clrscr(); printf("\t\t ****ATM存取款一体机系统菜单****\n\n"); printf("\n\t\t\t现在你正在注册!\n"); do { printf("\n\t\t\t请输入密码:\n\t\t\t"); i=0; do { zhanghu[zhanghushu].mima[i]=getch(); printf("*"); i++; }while(i<6) ; zhanghu[zhanghushu].mima[6]=‘\0’; printf("\n\t\t\t请再次输入密码:\n\t\t\t"); i=0; do { mima2[i]=getch(); printf("*"); i++; }while(i<6); mima2[6]=‘\0’; if(strcmp(zhanghu[zhanghushu].mima,mima2)==0) break; else printf("\n\t\t两次密码不相同,注册失败,请重新输入密码~\n"); sleep(3); }while(1); break; }while(1); fflush(stdin); /*以下都为清除多余的输入*/ printf("\n\t\t\t注册成功~\n"); getch(); textbackground(GREEN); textcolor(YELLOW); clrscr(); printf("\t\t\t****ATM存取款一体机系统菜单****\n\n"); printf("\n\t\t\t恭喜你,注册成功~\n"); printf("\t\t\t请记好你的账号和密码~\n\n"); xianshizhanghu(); zhanghushu++; printf("\t\t\t还要继续注册吗?(Y/N)\n"); fflush(stdin); /*以下都为清除多余的输入*/ printf("\t\t\t"); scanf("\t\t\t%c",&sign); /*输入判断*/ } zhanghu[zhanghushu].yue=0; zhanghu[zhanghushu].jiaoyishu=0; } void denglu()/*定义登录函数*/ { char zhanghao[12],mima[7]; int i=0,mimashu=0,n=0; textbackground(BLUE); textcolor(YELLOW); clrscr(); do{ system("cls"); textbackground(BLUE); textcolor(YELLOW); clrscr(); fflush(stdin); /*以下都为清除多余的输入*/ printf("\t\t ****ATM存取款一体机系统菜单****\n\n"); printf("\n\t\t\t请输入帐号:\n\t\t\t"); scanf("%s",zhanghao); while(strcmp(zhanghao,zhanghu[i].zhanghao)!=0&&i<zhanghushu) i++; if(i==zhanghushu) { printf("\t\t该账号不存在,请注册~\n"); sleep(2); return; } dangqianzhanghuxiabiao=i; break; }while(1); do { system("cls"); textbackground(BLUE); textcolor(YELLOW); clrscr(); fflush(stdin); /*以下都为清除多余的输入*/ do \n\n"); { printf("\t\t ****ATM存取款一体机系统菜单****printf("\n\t\t\t请输入密码:\n\t\t\t"); n=0; do{ mima[n++]=getch();/*输入新密码并保存在变量xinmima1*/ printf("*"); }while(n<6); mimashu++; mima[6]=‘\0’; if(strcmp(mima,zhanghu[i].mima)==0) break; else if(mimashu==3) { printf("\n\t\t密码输入超过三次,请重新登录~\n"); sleep(2); return; } printf("\n\t\t密码输入错误,请重新输入~"); sleep(3); system("cls"); textbackground(BLUE); textcolor(YELLOW); clrscr(); }while(1); break; }while(1); for(;;) { */ switch(caozuocaidan()) /*选择判断 { case 1: cunkuan(); break; case 2: qukuan(); break; case 3: zhuanzhang(); break; case 4: chaxun(); break; case 5: xiugaimima(); break; case 6: shoujichongzhi(); break; case 0: return; } } } void baocun()/*定义保存函数*/ { int i,j; FILE *fp;/*定义文件名指针*/ char filename[20]; textbackground(BLUE); textcolor(YELLOW); clrscr(); printf("\t\t将数据保存到一个文 printf("\t\t\t请输入文件名:\n"); printf("\t\t\t"); scanf("%s",filename); if((fp=fopen(filename,"w"))==NULL) { printf("\t\t\t该文件不存在,无法创建文件夹~\n"); system("pause"); return; } fprintf(fp,"%d\n",zhanghushu); for(i=0;i<zhanghushu;i++) { jiami(zhanghu[i].mima); fprintf(fp,"\t%15s\t%10s\t%20s\t%10s\t%10.2f\t%5d\n", zhanghu[i].zhanghao,zhanghu[i].xingming,zhanghu[i].shenfengzheng,zhanghu[i].mi ma,zhanghu[i].yue,zhanghu[i].jiaoyishu); for(j=0;j<zhanghu[i].jiaoyishu;j++) { fprintf(fp,"%30s\t%10.2f\t%10.2f\t%5s\n",zhanghu[i].jiaoyi[j].shijian, zhanghu[i].jiaoyi[j].jine,zhanghu[i].jiaoyi[j].yue,zhanghu[i].jiaoyi[j].leixing); } } printf("\t\t\t数据保存成功!"); sleep(2); } void dakai()/*定义保存函数*/ { int i,j; FILE *fp;/*定义文件名指针*/ char filename[20]; printf("\n\n\t\t\t打开一个文 printf("\t\t\t请输入欲打开文件名:\n"); printf("\t\t\t"); gets(filename); if(strlen(filename)==0) return; else if((fp=fopen(filename,"r"))==NULL) { printf("\t\t\t无法打开,初始数据为0~\n\t\t\t"); system("pause"); return; } else fp=fopen(filename,"r"); fscanf(fp,"%d\n",&zhanghushu); for(i=0;i<zhanghushu;i++) { fscanf(fp,"\t%15s\t%10s\t%20s\t%10s\t%10f\t%5d\n", zhanghu[i].zhanghao,zhanghu[i].xingming,zhanghu[i].shenfengzheng,zhanghu[i].mi ma,&(zhanghu[i].yue),&(zhanghu[i].jiaoyishu)); jiemi(zhanghu[i].mima); for(j=0;j<zhanghu[i].jiaoyishu;j++) { fgets(zhanghu[i].jiaoyi[j].shijian,30,fp); fscanf(fp,"%10f%10f%5s\n",&zhanghu[i].jiaoyi[j].jine, &zhanghu[i].jiaoyi[j].yue,zhanghu[i].jiaoyi[j].leixing); } } fclose(fp); printf("\t\t\t打开成功~\n"); for(i=0;i<zhanghushu;i++) { printf("\t帐号\t\t\t姓名\t\t身份证\t\t密码\t余额\t交易数\n"); printf("\t%13s\t%10s\t%20s\t%10s\t%10f\t%5d\n", zhanghu[i].zhanghao,zhanghu[i].xingming,zhanghu[i].shenfengzheng,zhanghu[i].mi ma,(zhanghu[i].yue),(zhanghu[i].jiaoyishu)); } getch(); return; } void chaxunyue()/*定义查询余额函数*/ { printf("\t\t\t你的余额 为:%.2f\n\t\t\t",zhanghu[dangqianzhanghuxiabiao].yue); system("pause"); } void chaxuncunkuanjilu()/*定义查询存款记录函数*/ { int i; printf("\t\t\t这是你的存款记录:\n"); printf("\t类型\t金额\t余额\t\t\t时间\n"); for(i=0;i<zhanghu[dangqianzhanghuxiabiao].jiaoyishu;i++) { if(strcmp(zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].leixing,"存款 ")==0) printf("\t%s\t%.2f\t%.2f\t\t%s\n",zhanghu[dangqianzhanghuxiabiao].jia oyi[i].leixing, zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].jine,zhanghu[dangqianzhanghuxiabiao]. jiaoyi[i].yue, zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].shijian); } system("pause"); } void chaxunqukuanjilu()/*定义查询取款记录函数*/ { int i; printf("\t\t\t这是你的取款记录:\n"); printf("\t类型\t金额\t余额\t\t\t时间\n"); for(i=0;i<zhanghu[dangqianzhanghuxiabiao].jiaoyishu;i++) { if(strcmp(zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].leixing,"取款 ")==0) printf("\t%s\t%.2f\t%.2f\t\t%s\n",zhanghu[dangqianzhanghuxiabiao].jia oyi[i].leixing, zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].jine,zhanghu[dangqianzhanghuxiabiao]. jiaoyi[i].yue,zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].shijian); } system("pause"); } void chaxunzhuanzhangjilu()/*定义转账记录函数*/ { int i; printf("\t\t\t这是你的转账记录:\n"); printf("\t类型\t金额\t余额\t\t\t时间\n"); for(i=0;i<zhanghu[dangqianzhanghuxiabiao].jiaoyishu;i++) { if(strcmp(zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].leixing,"转出 ")==0||strcmp(zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].leixing,"转入 ")==0) printf("\t%s\t%.2f\t%.2f\t\t%s\n",zhanghu[dangqianzhanghuxiabiao].jia oyi[i].leixing, zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].jine,zhanghu[dangqianzhanghuxiabiao]. jiaoyi[i].yue,zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].shijian); } system("pause"); } void chaxunsuoyoujilu()/*定义查询所有记录函数*/ { int i; printf("\t\t\t这是你的所有记录:\n"); printf("\t类型\t金额\t余额\t\t\t时间\n"); for(i=0;i<zhanghu[dangqianzhanghuxiabiao].jiaoyishu;i++) { printf("\t%s\t%.2f\t%.2f\t\t%s\n",zhanghu[dangqianzhanghuxiabiao].jia oyi[i].leixing, zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].jine,zhanghu[dangqianzhanghuxiabiao]. jiaoyi[i].yue,zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].shijian); } system("pause"); } void chaxunchongzhijilu()/*定义查询取款记录函数*/ { int i; printf("\t\t\t这是你的充值记录:\n"); printf("\t类型\t金额\t余额\t\t\t时间\n"); for(i=0;i<zhanghu[dangqianzhanghuxiabiao].jiaoyishu;i++) { if(strcmp(zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].leixing,"充值 ")==0) printf("\t%s\t%.2f\t%.2f\t\t%s",zhanghu[dangqianzhanghuxiabiao].jiaoy i[i].leixing, zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].jine,zhanghu[dangqianzhanghuxiabiao]. jiaoyi[i].yue,zhanghu[dangqianzhanghuxiabiao].jiaoyi[i].shijian); printf("\n\t\t\t"); } system("pause"); } void jiami(char* s) { int i; for(i=0;i<strlen(s);i++) s[i]+=179; } void jiemi(char* s) { int i; for(i=0;i<strlen(s);i++) s[i]-=179; }
/
本文档为【ATM取存款机】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索