课程设计实验报告atm机仿真程序报告--学位论文.doc
《课程设计实验报告atm机仿真程序报告--学位论文.doc》由会员分享,可在线阅读,更多相关《课程设计实验报告atm机仿真程序报告--学位论文.doc(21页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、安徽科技学院网络工程专业数据结构课程设计实验报告学 院: 理学院 班 级:112班组 长: 学 号:成 员 开课学期: 2012年09月03号实验日期: 2012年11月19号至12月16日指导教师: 目录1.数据结构课程设计目的和要求-3 1.1.地位目的-3 1.2内容要求-3 1.3.与其它课程的联系-3 1.4.课程报告撰写-42任务书-43.正文-4 3.1.需求分析-43.2.概要设计-53.3.详细设计-63.4程序源代码清单-63.5.调试分析-15 3.6.调试结果-164.总结与体会-206.参考文献-201.数据结构课程设计目的要求一、本课程的地位、目的数据结构课程设计是
2、计算机科学技术专业集中实践性环节之一,是学习完数据结构课程后进行的一次全面的综合练习。开设该课程设计的主要目的是:1. 使学生进一步理解和掌握课堂上所学各种基本抽象数据类型的逻辑结构、存储结构和操作实现算法,以及它们在程序中的使用方法。2. 使学生掌握软件设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力。3. 使学生掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力。二、课程设计的内容和要求根据课程设计的时间和个人能力,在老师的协助下选择适当难度的课程设计课题,用C/C+语言实现。具体内容如下:1、 需求分析以无歧义的陈述说明程序设计的任务,强调的是程序要做什么?
3、明确规定:输入的形式,输出的形式和值的范围;程序所能达到的功能;测试的数据。2、 概要设计说明程序中用到的所有抽象数据类型的定义,主程序的流程以及各程序模块之间的层次(调用)关系。3、 详细设计实现概要设计中定义的所有数据类型,对每个操作只需要写出伪代码算法,画出函数的调用关系图。4、 调试分析调试过程中遇到的问题并且是如何解决的以及对设计实现的回顾讨论和分析;算法的时空分析(包括基本操作和主要算法的时空复杂度的分析)和改进设想;经验和体会等5、 用户使用说明说明用户如何使用你编写的程序,详细列出每一步的操作步骤。6、 测试结果列出测试结果,包括输入的数据和相应的输出数据。三、与其它课程的联系
4、先修课程为C语言程序设计和数据结构等。四、课程设计报告撰写课程设计报告包括:封面、任务书、目录、正文和参考文献等。正文包括以下几方面的内容:1.需求分析2.概要设计3.详细设计4.调试分析5.测试结果6.体会与总结2.任务书【题目描述】设计一个ATM机仿真程序,该程序应该具有一下功能:(1) 可以让用户开设新的账户;(2) 可以完成对账户的查询功能;(3) 可以完成账户的存款功能;(4) 可以完成账户的取款功能;(5) 可以完成账户的密码进行修改功能【题目要求】(1)存储结构采用顺序表或链表;(2)用C语言知识和本学期所学算法实现各模块;(3)主函数设计一个菜单,通过菜单进入各模块测试。3.正
5、文3.1需求分析需设计的程序是模拟ATM机进行查询、存款、取款操作的一个程序,同时还添加了密码修改,模拟银行工作人员进行开户的功能。因为此程序是模拟对用户财产安全进行操作的程序,要求本程序要保证用户的信息的安全性,如输入密码时要用字符覆盖,输入密码有上限,减少可能存在的程序漏洞。要求此程序满足:1. 正确性和健壮性:即此程序对一切合法的操作都能得出满足规格说明要求的结果,对不合法的操作也要有正确的处理措施,使程序严谨,保证用户的信息和财产安全。2.可读性:程序要尽量简明扼要,便于相关人员调试和修改。3.时空效率:要求本程序执行时间尽可能短,占用的储存空间尽可能的少。实验名称ATM机仿真程序实验
6、场所软件工程1号机房3.2概要设计:程序的流程图如下所示:开始界面对原帐户操作开户出口 1输入卡号否开户成功开户失败是输入密码帐户操作菜单 否是选择语言出口2修改密码取款存款查询操作成功开始界面3.3详细设计:本程序是ATM仿真程序,对于用户的所有信息是通过一个线性表COUNT来存储的,本程序总共设计了main menu(int)、languagemen()、query(float,int)、withdraw(float,int)、kaihu(psqlist p),changepw(psqlist,int,int),caozuo(psqlist)等子函数来共同完成的,具体分析如下:在主函数ma
7、in() 里分成了四个模块。模块一是完成事先设置了10个用户的所有信息。模块2、3、4在一个开始界面(通过一个switch语句来完成),分别为开户、对原有用户操作和退出整个程序模块是完成对新用户的操作,通过函数kaihu( )来完成,给新用户注册一个卡号,接下来就是让用户设置密码,要输入两次,具体要用到getchar(),和putchar()等函数,当两次输入不一样时提示用户重新输入,用户完成后会退出kaihu( )函数,返回开始界面。模块3是对用户账户操作的一个函数,首先要输入卡号和密码,当不正确时返回上一界面,当输入正确时设置了两种语言选择,选择语言后进入操作菜单函数mainmenu,可划
8、分为五个小模块;模块一是查询账户余额函数query;模块二是存款函数deposit;模块三是取款函数withdraw;模块四是密码修改函数changepw;模块五是返回上一界面函数exit()。本程序通过各个模块的组合连接共同在一起完成ATM仿真程序的开户、查询、存款、取款、修改密码等有关操作。3.4程序源代码清单:#includestdio.h#includestring.h#includestdlib.h#includeconio.h#includectype.hvoid mainmenu(int); /-账户菜单int languagemenu(); /-语言选择void query(f
9、loat,int); /-查询当前余额float deposit(float,int);/-存钱float withdraw(float,int);/-取钱int true1(int a); /密码确认函数 typedef struct float money;int key6;datatype;typedef struct /储存用户信息的线性表datatype data50;int length;sqlist,*psqlist;psqlist init_sqlist() /线性表的初始化 psqlist count;count=(psqlist)malloc(sizeof(sqlist);
10、if(count)count-length=0;return count;psqlist kaihu(psqlist p)/-开户函数 system(cls); psqlist pl=p; int i,j; pl-length=pl-length+1; while(1) char a7=0,b7=0; printf(您的卡号是:%dn,pl-length); printf(请设置您的账号密码); for(i=0;i6;i+) ai=getch(); putchar(*); printf(n); printf(请再一次输入您的密码); for(i=0;i6;i+) bi=getch(); put
11、char(*); if(strcmp(a,b)=0) for(j=0;jdatapl-length.keyj=(int)bj-48; printf(n); printf(=n); printf(密码设置成功n); printf(请输入您要预存的金额:); scanf(%f,&(pl-datapl-length.money) ; printf(恭喜您开户成功n); break; printf(=n); else printf(n); printf(=n); printf(两次密码输入不一致n); printf(按任意键键后从新输入n); printf(=n); getch(); system(c
12、ls); printf(按任意键继续n); getch(); system(cls); return pl; psqlist changepw(psqlist q,int k,int islan)/-密码修改函数 psqlist pa=q; int i; char b7=0, p7=0; if(islan) while(1) system(cls); printf(=n); printf(Please enter your new password:); for(i=0;i6;i+) bi=getch(); putchar(*); printf(n); printf(Please enter
13、your new password once again:); for(i=0;i6;i+) pi=getch(); putchar(*); printf(n); if(strcmp(b,p)=0) for(i=0;idatak.keyi=(int)pi-48; printf(Congratulations on your password successfully changedn); printf(=n); break; else printf(The two codes are not the samen); printf(Press any key to boot from the n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 实验 报告 atm 仿真 程序 学位 论文
限制150内