课程设33计.doc_第1页
课程设33计.doc_第2页
课程设33计.doc_第3页
课程设33计.doc_第4页
课程设33计.doc_第5页
免费预览已结束,剩余5页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

高级程序设计语言 课程设计报告1程序目标及功能:银行存取款管理系统1、银行存取款管理系统简介银行存取款管理系统用于模拟银行里的客户信息管理和存取款信息管理。该系统能够输入客户信息,模拟存款与取款,按客户编号查询客户存款取款记录。2. 系统结构及模块要求(1)客户节点数至少10个。(2)程序主界面包括程序名称及编程者学号、姓名、班级;同时要求输入功能号码,选择进入功能模块程序。(3)各模块功能:A. 创建客户信息表。动态创建客户信息表,同时输入客户信息。客户信息表用链表实现。链表节点个数不少于10个。B. 追加客户。在客户信息表中新增一个节点,从键盘输入客户信息。C. 存款。输入客户编号和存款金额,改变客户信息表中的余额信息,并将存款记录写入存取款文件。D. 取款。输入客户编号和取款金额,改变客户信息表中的余额信息,并将存款记录写入存取款文件。 E. 输入客户编号,查询存取款信息。F. 保存客户信息到磁盘文件。建立一个磁盘文件,把所建立的客户表信息写入文件。 F. 从磁盘文件中读出客户信息。3. 基本要求(1)在客户文件中,每个客户是一条记录,包括客户编号、客户姓名、支取密码、客户地址、客户电话、账户总金额;(2)每个客户对应一个存取款文件。(3)在存取款文件中,每次存取款是一条记录,包括编号、日期、类别、存取数目、经办人。类别分为取款和存款两种。(4)用函数分别实现动态链表的建立、动态链表输出等功能。(5)界面友好,对程序加必要的注释;(6)函数功能要划分好(结构化程序设计);函数要求使用指针作形参。(7)要特别注意模拟存取款时,客户信息表和存取款文件中的信息要同时更新。 2程序功能模块组成及流程图2.1系统功能模块 1. 创建客户信息表。 2. 追加客户。 3. 存款。 4. 取款。 5. 输入客户编号,查询存取款信息。6. 保存客户信息到磁盘文件。7. 从磁盘文件中读出客户信息。8. 退出系统。2.2各模块流程图界面输入1、创建客户信息表4、追加客户3、取款2、存款6、保存客户信息到 磁盘文件8、退出系统5、输入客户编号,查询存取款信息7、从磁盘文件中读出客户信息3程序主要数据结构及函数列表第 10 页 共 10 页3.1用户信息数据结构:typedef structchar num10;char name12;char secret10;char address16;char tele11;int money;struct zhyf *next;zhyf,*zyf;用户记录数据结构:typedef structchar num10;char day20;char type10;int s;char man20;yong;3.2 函数列表1. creat(zyf B);/创建客户信息表。2. PLUX(zyf B);/追加客户。3. print(zyf B);/打印客户信息表。4. income(zyf B);/存款。5. outcome(zyf B);/取款。6. putout();/输入客户编号,查询存取款信息。7. uersprotect(zyf B);/保存客户信息到磁盘文件。8. uersputout();/从磁盘文件中读出客户信息。4程序代码及运行结果/* Note:Your choice is C IDE */#include stdio.h#include string.h#define KO printf( );typedef structchar num10;char name12;char secret10;char address16;char tele11;int money;struct zhyf *next;zhyf,*zyf;typedef structchar num6;char day6;char type6;char Y10;char man8;fa;typedef structchar num10;char day20;char type10;int s;char man20;yong;zyf creat(zyf B)int i,n;zyf A,p;FILE *fp;fa fa1=编号,日期,类别,存取数目,经办人;char s4=.txt,ch10;printf(请输入要建立用户的个数:);scanf(%d,&n);B=(zyf)malloc(sizeof(zhyf);B-next=NULL;p=B;for(i=0;inum,A-name,A-secret,A-address,A-tele,&A-money);strcpy(ch,A-num);strcat(ch,s4);p-next=A;A-next=NULL;p=p-next;if(fp=fopen(ch,w)=NULL)printf(打不开文件);exit(0);fwrite(&fa1,sizeof(fa),1,fp);fclose(fp);printf(【已成功建立用户信息】n);return B;PLUX(zyf B)zyf A,p;FILE *fp;fa fa1=编号,日期,类别,存取数目,经办人;char s4=.txt,ch10;A=B;while(A-next!=NULL)A=A-next;p=(zyf)malloc(sizeof(zhyf);printf(请输入增加用户的n【编号】【姓名】【密码】【地址】【电话】【金额】n );scanf(%s%s%s%s%s%d,p-num,p-name,p-secret,p-address,p-tele,&p-money);strcpy(ch,A-num);strcat(ch,s4);A-next=p;p-next=NULL;if(fp=fopen(A-num,w)=NULL)printf(打不开文件);exit(0);fwrite(&fa1,sizeof(fa),1,fp);fclose(fp);printf(【已成功添加!】);print(zyf B)zyf p;p=B-next;while(p!=NULL)printf(%s %s %sn,p-num,p-name,p-secret); printf(%s %s %dn,p-address,p-tele,p-money);p=p-next;income(zyf B)zyf A;char p10,ch10,s1=2013.1.4,s2=存款,s3=赵永发,s4=.txt;int s;FILE *fp;yong fa1;A=B-next;printf(请输入存款编号:);scanf(%s,p);printf(请输入存款金额:);scanf(%d,&s);strcpy(ch,p);strcat(ch,s4);strcpy(fa1.num,p);fa1.s=s;strcpy(fa1.day,s1);strcpy(fa1.type,s2);strcpy(fa1.man,s3);while(strcmp(A-num,p)&A!=NULL)A=A-next;if(A=NULL)printf(用户不存在);exit(0);else A-money=A-money+s;if(fp=fopen(ch,a)=NULL)printf(打不开文件);exit(0); fwrite(&fa1,sizeof(yong),1,fp); fclose(fp);printf(【已成功存款,谢谢使用!】n);outcome(zyf B)zyf A;char num10,s1=2010.12.29,s2=取款,s3=赵永发;int s;FILE *fp;yong fa1;char s4=.txt,ch10;A=B-next;printf(请输入取款编号:);scanf(%s,num);printf(请输入取款金额:);scanf(%d,&s);strcpy(fa1.num,num);fa1.s=s;strcpy(fa1.day,s1);strcpy(fa1.type,s2);strcpy(fa1.man,s3);strcpy(ch,num);strcat(ch,s4);while(strcmp(A-num,num)&A!=NULL)A=A-next;if(A=NULL)printf(用户不存在);exit(0);else A-money=A-money-s;if(fp=fopen(ch,a)=NULL)printf(打不开文件);exit(0);fwrite(&fa1,sizeof(yong),1,fp); fclose(fp);printf(【已成功取款,谢谢使用!】); putout() FILE *fp;yong fa1;fa k;char s4=.txt,num10;printf(请输入查看编号:);scanf(%s,num);strcat(num,s4);if(fp=fopen(num,r)=NULL)printf(打不开文件);exit(0);fread(&k,sizeof(fa),1,fp);printf(%s %s %s %s %sn,k.num,k.day,k.type,k.Y,k.man);while(fread(&fa1,sizeof(yong),1,fp)printf(%s %s,fa1.num,fa1.day); printf(%s %d %sn,fa1.type,fa1.s,fa1.man); fclose(fp);uersprotect(zyf B)zyf A;FILE *fp;A=B-next;if(fp=fopen(B,w)=NULL)printf(打不开文件);while(A!=NULL) fwrite(A,sizeof(yong),1,fp);A=A-next; fclose(fp);printf(用户信息已保存!n);uersputout()FILE *fp;zhyf A;if(fp=fopen(B,r)=NULL)printf(打不开文件);while(fread(&A,sizeof(yong),1,fp)printf(%s %s %s %s %s %dn,A.num,A.name,A.secret,A.address,A.tele,A.money);fclose(fp);void main()zyf B;char choice;printf(选择对【银行存取款管理系统】的操作,操作菜单如下:n);printf(*n);printf( 1、【创建客户信息表】n);printf( 2、【追加客户】n);printf( 3、【客户存款】n);printf( 4、【客户取款】n);printf( 5、【输入客户编号,查询存取款信息】n);printf( 6、【保存客户信息到磁盘文件】n);printf( 7、【从磁盘文件中读出客户信息】n);printf( 8、【退出系统】n);printf(*n);printf(10电信一班 姓名:赵永发 学号:20100504133n);while(choice=getchar()&choice!=8)switch(choice)case 1:B=creat(B); break;case 2:PLUX(B);print(B); break;case 3: income(B); break;case 4:outcome(B); break;case 5:putout();break;case 6:uersprotect(B);break;case 7: uersputout(); break;default:printf(【请输入正确的选择】:n);运行结果:5总结与体会 心得与体会这次的C语言课程设计让我收获不少,一次

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论