数据结构课程设计报告(信管1134班26 )
来源:互联网 发布:程序员被骗婚女方 编辑:程序博客网 时间:2024/05/01 08:25
《数据结构课程设计》
课程题目
活期存款处理程序
课程编号
j1620102
学生姓名
尤逊
所在专业
信息管理与信息系统
所在班级
信管1134班
任课老师
易学明
实习时间
1月11日
设计成绩
老师评语
一:题目:小明是一个计算机专业top student,祝贺他毕业了。并准备到银行参加工作。上班第一天,经理叫他编制一个实现一个活期储蓄处理程序,算作考查。上班第一天, 一定要给领导一个好印象,小明二话没说,就答应了。现要你是小明了,请完成如下题目功能。储户开户、销户、存入、支出活动频繁,系统设计要求:(1)能比较迅速地找到储户的帐户,以实现存款、取款记账;
(2)能比较简单,迅速地实现插入和删除,以实现开户和销户的需要。
二:系统功能分析:
1:开户:能够新建一个新的客户的账户。
2:查询:能够查询已有的客户账号和新开户的客户的信息和账号所剩的余额。
3:销户:删除客户的账号信息。
4:存取:能记录并保存某个客户的账号所进行的存取款的记录。
三:总结:
1.关于文件的知识学的不够好,很多函数功能不了解,通过上学期学习的《C++语言》教材,及图书馆中数据结构系列书籍中关于文件的介绍,我终于学会了文件的一些操作。例如指针的访问。
2.字符串和字符常量的混淆让我在运用他们时很吃力,于是我重新复习了一下《C++语言程序设计》中相关知识,解决了与他们有关的相关问题。
3.由于对文件的学习不够深入,加上学习的时间很久了,所以感觉文件部分很生疏。于是我重新看了一遍《C++语言程序设计》中有关文件部分的内容,并从图书馆查阅了相关知识,学会了文件的打开、关闭和读写。这才使得我写的程序中读写文件部分能够顺利运行。
4.在插入元素时,由于我有时插入的位置在有指针节点的后面,而书上讲的都是插入的位置在有指针节点的前面,所以总有错误。于是我在纸上一步步画出其插入的运行过程。在纸上手工操作之后我终于找到了错误的关键,及时调整语句顺序,解决了问题。这使得我明白了不能总是照抄照搬书本上的知识,而是应该随机应变,这样才能真正提高自己的能力。
5.有时候,语句都没错的情况下,输出依旧有错误。而在对输出函数仔 细检查之后发现输出函数并没有错误。在尝试中我发现了是释放节点上出了问题。原来,释放节点是可以节省空间,但不恰当的释放却会使数据丢失。
四:收获与不足:
第一次做课程设计,开始自己读题时,思路不是很清晰,经老师把每个题目提示看一下后,明白这个程序就是要结合所学数据结构的思想,首先定义了一个结构体,包含了储户的各类信息,如姓名,账号,金额等等,并利用文件将用户信息加以存储。开户时将输入的信息写入文件,存款和取款时对用户的存款加以处理并更新到文件中。在分析好活期储蓄帐目管理的功能模块后,开始编写代码,在代码调试的过成中,并不是一帆风顺的,这也是平常练的不够吧,经过几轮删删改改,终于做的差不多了,基本达到了老师的要求,但是还是有很多不足的地方。通过这次对银行管理系统的编写与调试,巩固了有关结构体的知识及其操作,锻炼了实际应用能力,同时对文件有了更进一步的了解及应用,明白文件的读写等相关知识。在不断地进行书面设计和上机调试的过程中,认识到掌握设计程序的思路非常重要,要正确处理算法与语法的关系,算法是程序的核心,是灵魂,语法是外壳是工具。但是光掌握语法也是不够的,应该还要把重点放在解题思路上。这个实验也让我认识到自己知识的有限,与同学讨论的益处,培养了我的团队意识。我今后在编程时还需要多练习多思考,继续加油。
#ifndef huoqi_H#define huoqi_Hconst int Maxsize=9999; struct client{ int number; int total;};class huoqi{public: huoqi(client a[],int n); ~huoqi(){}; void insert(int x,int y); void delet(int x); void dw(int x,int y); void print(int x); private: client data[Maxsize]; int sum;};#endif#include<iostream>using namespace std;#include"huoqi.h"huoqi::huoqi(client a[],int n){ for(int i=0;i<n;i++) { int j=a[i].number-1; data[j].number=a[i].number; data[j].total=a[i].total; } sum=n;}void huoqi::insert(int x,int y){ int j=x-1; data[j].number=x; data[j].total=y; sum++; cout<<endl;}void huoqi::delet(int x){if(x<=sum&&x>0){int j=x-1;data[j].number=NULL;data[j].total=NULL;sum--;}else{cout<<"该客户账号不存在"; cout<<endl;}cout<<endl;}void huoqi::dw(int x,int y){ int money,j; j=x-1; if(x<=sum&&x>0) { money=y; data[j].total+=money; } else { cout<<"该客户账号不存在"; cout<<endl; } cout<<endl;}void huoqi::print(int x){ int j; j=x-1; if(x<=sum&&x>0) { cout<<"该客户的账户为:"; cout<<data[j].number; cout<<endl; cout<<"该客户的当前账户资金总额为:"; cout<<data[j].total; cout<<endl; } else { cout<<"该客户账号不存在"; cout<<endl; } cout<<endl;}#include<iostream>#include <time.h>#include <stdio.h>using namespace std;#include"huoqi.h"void time(){time_t t = time(0); char tmp[64]; strftime( tmp, sizeof(tmp), "%Y/%m/%d %X %A %z",localtime(&t)); puts( tmp );}int main(){client a[10]; for(int i=0;i<10;i++) {a[i].number=i+1; a[i].total=1000; } huoqi L(a,10); int code; int num; int mon; int to; cout<<"============================个人服务==========================="; cout<<endl; cout<<"查询余额请按1"; cout<<endl; cout<<"存取款请按2"; cout<<endl; cout<<"开户请按3"; cout<<endl; cout<<"销户请按4"; cout<<endl; cout<<"退出请按0"; cout<<endl; cout<<"================================================================"; cout<<endl; cout<<"请输入号码:"; cin>>code; for(;code<=4&&code>=0;) {if(code==1){ cout<<"当前交易时间:"; time();cout<<"请输入要查询的客户的账号:"; cin>>num; L.print(num);} if(code==2){ cout<<"当前交易时间:"; time(); cout<<"请输入要存取款的客户账号:"; cin>>num; cout<<"请输入存取款金额:"; cin>>mon; L.dw(num,mon);} if(code==3){ cout<<"当前交易时间:"; time(); cout<<"请输入要新增的客户账号:"; cin>>num; cout<<"请输入存取款金额:"; cin>>to; L.insert(num,to);} if(code==4){ cout<<"当前交易时间:"; time(); cout<<"请输入要删除的客户账号:"; cin>>num; L.delet(num);} if(code==0){ return 0;} cout<<"请输入号码:"; cin>>code;} cout<<"不存在该操作"; cout<<endl; return 0;}
截图:
一:主界面:
二:余额查询:
三:存取款操作:
四:开户:
五:销户:
- 数据结构课程设计报告(信管1134班26 )
- 数据结构课程设计 信管1134班 洪量
- 信管1132班32 章泳涛 数据结构课程设计
- 信管1132陈玉君数据结构课程设计课题四
- 【数据结构课程设计】信管1133何景涛201311671308
- 《数据结构》课程设计:咨询电话管理系统——信管113309
- 《数据结构》信管1133班和1134班同学链接
- 数据结构课程设计报告(附代码)
- 《数据结构》课程设计报告
- 数据结构课程设计实习报告
- 数据结构课程设计报告
- 数据结构课程设计报告
- 《数据结构》课程设计报告
- 数据结构课程设计报告
- 数据结构课程设计报告
- 数据结构课程设计报告
- 数据结构课程设计报告
- 《数据结构课程设计》报告
- mybatis扎谈
- 使用SmartSvn遇到的一个小问题: E175002: OPTIONS request failed
- 冒泡算法
- 画表格
- sublime插件BracktetHighLighter详细配置
- 数据结构课程设计报告(信管1134班26 )
- 超实用的JavaScript技巧及最佳实践
- Unity之点击实现点击种植
- 模板方法模式
- Android之ListView原理学习与优化总结
- 连载《一个程序员的成长历程》-14.萌生创业的想法
- Hibernate查询(二)
- 对互联网海量数据实时计算的理解
- bzoj3572: [Hnoi2014]世界树