版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
,.#include<iostream>usingnamespacestd;#include<string.h>#include<conio.h>#include<stdlib.h>#definefile"temp.txt" //数据存储的文件名谢谢阅读structuser //用户类型定义(账号,姓名,身份证号,余额)精品文档放心下载{intid;charname[20];charperson_num[19];doublemoney;};voidadd() //添加用户资料{cout<<"***添加用户***"<<endl;cout<<"---------------------------------------------"<<endl<<endl;感谢阅读,.structusergetuser();intcount(); //函数目的:计算文件中的记录数目 以生成自动账号谢谢阅读FILE*fp;intnumber;structusertemp;if((fp=fopen(file,"ab"))==NULL)谢谢阅读{cout<<"cannotopenfile!"<<endl;精品文档放心下载exit(1);}temp=getuser(); //读取用户名number=count();temp.id=number+1; //生成自动账号精品文档放心下载fwrite(&temp,sizeof(structuser),1,fp);谢谢阅读cout<<"添加用户成功!"<<endl;,.fclose(fp);}intcount() //函数目的:计算文件中的记录总数感谢阅读{FILE*fp;intnum;structusertemp;num=0;if((fp=fopen(file,"rb"))==NULL)谢谢阅读{cout<<"cannotopenfile!"<<endl;感谢阅读exit(1);}while(fread(&temp,sizeof(structuser),1,fp))感谢阅读{num++;}fclose(fp);,.returnnum;}structusergetuser(){voidgetname(char*name);voidgetperson_num(char*person_num);感谢阅读structusertemp;cout<<"请输入用户姓名(字符数<20): "; //读取相关开户信息谢谢阅读getname();cout<<"请输入用户身份证号码: ";getperson_num(temp.person_num);精品文档放心下载cout<<"输入开户金额:";do{ //判断开户金额(>=100)cin>>temp.money;fflush(stdin);if((temp.money)<100.0),.cout<<"开户金额不能小于100"<<endl;感谢阅读elsebreak;cout<<"重新输入开户金额:";}while(1);returntemp;}voidgetname(char*name) //函数功能:读取用户姓名(字符数<20)精品文档放心下载{do{scanf("%s",name);fflush(stdin);if(strlen(name)==0)cout<<"姓名不能为空!"<<endl;elseif(strlen(name)>=20)cout<<"姓名不能超过20个字符!"<<endl;精品文档放心下载,.elsebreak;cout<<"重新输入姓名: ";}while(1); //循环以保证读入数据有效}voidgetperson_num(char*person_num) //函数功能:读取用户身份证号码(15位谢谢阅读或者18位){do{inti,mark;charch;for(i=0,mark=0;;i++) //输入有效性判断(只能是数字)精品文档放心下载if((ch=getchar())!='\n'){if(ch<='9'&&ch>='0')person_num[i]=ch;else{cout<<"身份证号码只能是数字!"<<endl;感谢阅读,.mark=1;break;}}elsebreak;person_num[i]='\0';if(mark==1)continue;if(strlen(person_num)!=15&&strlen(person_num)!=18)精品文档放心下载cout<<"身份证号码只能是15位,或者18位!\n";谢谢阅读elsebreak;cout<<"重新输入身份证号码: ";}while(1); //循环以保证读入数据有效}voidselect_name(){
//按照姓名查询账户余额,.voidgetname(char*name);cout<<"***按照姓名查询账户余额***"<<endl;精品文档放心下载cout<<"账号"<<"用户姓名"<<"身份证号码"<<"存款余额"<<endl;感谢阅读cout<<"---------------------------------------------"<<endl<<endl;感谢阅读FILE*fp;structusertemp;charname[20];if((fp=fopen(file,"rb"))==NULL)谢谢阅读{cout<<"cannotopenfile!"<<endl;感谢阅读exit(1);}cout<<"输入要查询的姓名:"; //调用读取用户名函数精品文档放心下载getname(name);while(fread(&temp,sizeof(structuser),1,fp)) //循环读取每一条记录 判断是否感谢阅读为要查看的记录if(strcmp(,name)==0)感谢阅读{,.cout<<temp.id<<<<temp.person_num<<temp.money<<endl;感谢阅读}fclose(fp);}voidselect_id() //按照账号查询账户余额精品文档放心下载{intcount();cout<<"***按照编号查询账户余额***"<<endl;谢谢阅读cout<<"编号"<<"用户姓名"<<"身份证号码"<<"存款余额"<<endl;感谢阅读cout<<"---------------------------------------------"<<endl<<endl;感谢阅读FILE*fp;structusertemp;inti,maxnum;if((fp=fopen(file,"rb"))==NULL)感谢阅读{cout<<"cannotopenfile!"<<endl;感谢阅读exit(1);,.}maxnum=count();cout<<"输入要查询账号:"; //判断账号是否在记录中精品文档放心下载cin>>i;if(i<1||i>maxnum){cout<<"你要查询的账号不存在!";return;}while(fread(&temp,sizeof(structuser),1,fp))//循环读取每一条记录 判断是否为要感谢阅读查看的记录if(temp.id==i){cout<<temp.id<<<<temp.person_num<<temp.money<<endl;精品文档放心下载}fclose(fp);},.voiddisplay() //显示用户资料{cout<<"***用户资料显示***"<<endl;谢谢阅读cout<<"账号"<<"用户姓名"<<"身份证号码"<<"存款余额"<<endl;精品文档放心下载cout<<"---------------------------------------------"<<endl<<endl;谢谢阅读FILE*fp;structusertemp;if((fp=fopen(file,"rb"))==NULL)感谢阅读{cout<<"cannotopenfile!"<<endl;感谢阅读exit(1);}while(fread(&temp,sizeof(structuser),1,fp))精品文档放心下载{cout<<temp.id<<<<temp.person_num<<temp.money<<endl;感谢阅读}fclose(fp);,.}voidsave_money() //函数功能:按账号存款谢谢阅读{cout<<"***用户存款业务***"<<endl;精品文档放心下载cout<<"---------------------------------------------"<<endl<<endl;谢谢阅读intcount();FILE*fp;inti,num,mark;structuser*temp;num=count(); //根据记录数申请空间temp=(structuser*)malloc(num*sizeof(structuser));谢谢阅读if((fp=fopen(file,"rb"))==NULL)谢谢阅读{cout<<"cannotopenfile!"<<endl;精品文档放心下载exit(1);},.for(i=0;i<num;i++) //将文件内容存入数组谢谢阅读fread(&temp[i],sizeof(structuser),1,fp);精品文档放心下载fclose(fp);cout<<"输入要存款账号:"; //读取存款账号谢谢阅读cin>>mark;if(mark<1||mark>num){cout<<"你要存款账号不存在!";return;}if((fp=fopen(file,"wb"))==NULL) //写方式打开文件,覆盖原文件中的内容感谢阅读{cout<<"cannotopenfile!"<<endl;精品文档放心下载exit(1);}for(i=0;i<num;i++){if(temp[i].id==mark){,.doublemoney=0;cout<<"输入要存入的金额:";cin>>money;if(money<=0){cout<<"只能为正数!"<<endl;money=0;}temp[i].money+=money; //修改该用户的信息精品文档放心下载}fwrite(&temp[i],sizeof(structuser),1,fp);精品文档放心下载}fclose(fp);free(temp);cout<<"你存款业务已办妥!"<<endl;}voidget_money() //函数功能:用户取款精品文档放心下载{cout<<"***用户取款业务***"<<endl;谢谢阅读,.cout<<"---------------------------------------------"<<endl;谢谢阅读intcount();FILE*fp;inti,num,mark;structuser*temp;num=count(); //根据记录数申请空间temp=(structuser*)malloc(num*sizeof(structuser));感谢阅读if((fp=fopen(file,"rb"))==NULL)精品文档放心下载{cout<<"cannotopenfile!"<<endl;谢谢阅读exit(1);}for(i=0;i<num;i++) //读取文件内容精品文档放心下载fread(&temp[i],sizeof(structuser),1,fp);谢谢阅读fclose(fp);,.cout<<"输入要取款账号:";cin>>mark;if(mark<1||mark>num){cout<<"你要取款账号不存在!";return;}if((fp=fopen(file,"wb"))==NULL)精品文档放心下载{cout<<"cannotopenfile!"<<endl;精品文档放心下载exit(1);}for(i=0;i<num;i++) //写方式打开文件,覆盖原文件中的内容精品文档放心下载{if(temp[i].id==mark){doublemoney=0;cout<<"输入要取出的金额:";cin>>money;if(money<=0) //判断用户余额是否足够,.{cout<<"只能为正数!"<<endl;money=0;}elseif(money>temp[i].money){cout<<"你的余额不足!"<<endl;money=0;}temp[i].money-=money;}fwrite(&temp[i],sizeof(structuser),1,fp);谢谢阅读}fclose(fp);free(temp);cout<<"你取款业务已办妥!"<<endl;},.voiddel(){
//销户intcount();cout<<"***注销账户***"<<endl;cout<<"账号"<<"用户姓名"<<"身份证号码"<<"存款余额"<<endl;谢谢阅读cout<<"---------------------------------------------"<<endl;精品文档放心下载FILE*fp;structusertemp;inti,maxnum;if((fp=fopen(file,"rb"))==NULL)感谢阅读{cout<<"cannotopenfile!"<<endl;感谢阅读exit(1);},.maxnum=count();cout<<"输入要销户账号:"; //判断编号是否在记录中精品文档放心下载cin>>i;if(i<1||i>maxnum){cout<<"你要查询的账号不存在!";return;}while(fread(&temp,sizeof(structuser),1,fp))//循环读取每一条记录 判断是否为要精品文档放心下载查看的记录if(temp.id==i&&temp.money==0.00)//余额为0精品文档放心下载{temp.id=-1;//算无效帐户cout<<temp.id<<<<temp.person_num<<temp.money<<endl;谢谢阅读fwrite(&temp,sizeof(structuser),1,fp);//保存修改谢谢阅读}fclose(fp);,.}voidprint()//函数功能:输出界面{cout<<"***活期储蓄帐目管理系统***"<<endl;谢谢阅读cout<<"---------------------------------------------"<<endl;精品文档放心下载cout<<"1"<
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年河南新高中创新联盟TOP二十名校高三上学期化学试题及答案
- 财务报表分析 教案 项目三 利润表分析
- 三年级数学(上)计算题专项练习附答案
- 湘版九年级音乐上册教案全集
- 二年级语文上册教学设计
- 《电气控制系统设计与装调》教案 项目六 任务一:中间继电器
- 陕西省咸阳市实验中学2024-2025学年八年级上学期第二次质量检测地理试卷(含答案)
- 发光门牌市场发展预测和趋势分析
- 微笑服务培训
- 女用阳伞产业规划专项研究报告
- 湘教版八年级美术上册工作计划
- 2022年陕西投资集团有限公司招聘笔试题库及答案解析
- 2021年南阳市卧龙区卫生健康系统单位招聘笔试试题及答案解析
- atl变频器说明书AE 2
- 小学美术人美五年级下册多彩的民族传统纹样敦煌藻井纹样教案
- 2023届衡南县“五科联考”数学试卷(含答案)
- 公司税务管理办法
- 竞赛培训专题6-整数的整除性
- 医院医疗不良事件上报登记本
- 贵州省普通话考试说话题目30篇经典范文
- 武术操《英雄少年》全套动作教学教案
评论
0/150
提交评论