面向对象程序设计大作业实验报告
面向对象程序设计大作业实验报告
计算机2000<4>班周博慧
学号200035003203244
2001年12月5日
一,功能介绍
程序采用C++为设计语言,使用VISUAL C++提供的头文件,操作平台基于dos平台,适用的分辨率为600*480。
程序的设计目的是为一家船工厂建立库存清单。它能够实现的功能有:
1,输入库存(船,零件)的基本情况;
2,改变船或者零件的库存量;
3,查询现存的零件数量;
4,显示库存的基本情况。
二,基本结构
1,类的说明
程序共定义了四个类类型,它们分别是:stock(库存)类,part(零件)类,ship(船)类,stocklist类(库存链表类)。
其中,stock作为基类被part类和ship类公有继承,part类和ship类分别作为stock的派生类存在,两者无其它联系;stock-list类作为一个独立的类而存在。
2,成员说明
stock类定义了两类成员:
A)保护成员:包括current-level(当前库存量)和price(价格;对于零件而言是厂商的成本;对于船而已是销售给销售商的价格)。
B)公有成员:包括stock();get-level();change-level();get-price();change-price ();~stock()六个成员函数。
其中,get-level()返回当前的库存量;change-level()改变库存量;get-price()得到库存价格;
change-price()改变商品价格;~stock()显示目前某型号零件或某种船模型的库存量。change-level
()和~stock()被设置为虚函数。
part类除了自stock类继承的成员以外,还定义了两类成员,分别是:
A)私有成员:reorder-level(零件的定货量)和part-num(零件的型号);在这里要求零件的型号由一个字母两个数字组成。
B)公有成员:part();get-part();set-reorder();~part()四个成员函数。
其中,get-part()返回零件型号;set-reorder()设置定货量;~part()显示零件型号。
ship类除了自stock类继承的成员以外,还定义了两类成员,分别是:
A)私有成员:model(船的型号,要求输入字符);engine-size(引擎规格,要求输入数字);max-speed(船的最高速度)。
B)公有成员:ship();get-model();~ship()三个成员函数。
其中,get-model()返回船的型号,与零件型号不同,这里要求的是全字符;~ship()显示型号名称。
stock-list类包含了一个“指针对节点”类型的实例变量,程序运行的时候,指针将接收到一个part类对象或者ship类对象的地址,它也定义了两类成员:
A)私有成员:只定义了一个返回类型为stock-node结构(自定义的库存结点结构)的指针head-ptr。
B)公有成员:包括stock-list();insert-stock();find-part();find-ship();display-list ();~stock-list()五个成员函数。
其中,stock-list()把库存清单的首地址设置为空,为以后建立库存清单做准备;insert-stock()输入零件或者船的基本数据;find-part()查找零件数据;find-ship()查找船数据;display-list显示库存情况;~stock-list()释放旧地址占用的空间。
3,结构说明
本程序包括两个c++ header file和三个c++ source file。
c++ header file包括shipparts.h和stocklist.h;c++ source file包括shipparts.cpp,stocklist.cpp 和mainstock.cpp。
三,心得体会
通过这次大作业的设计,我对C++熟悉了很多,更深刻的体会到C++编程序的优点,加深了对类封装性和继承的理解,熟悉了vc的操作,也丰富了自己的编程经验。
同时,我也深深体会到自己的很多不足,没有很彻底的领会面向对象程序设计的优点,不能很好的构建层次清晰而且分类详细的继承体系,没有建立良好的辨认错误输入发出警告的防御系统,不能检查出一般的输入错误,程序能够实现的功能很少。而且,由于个人编程经验的严重缺乏,程序的适用性极低。
以后要进一步学习c++的编程技巧,增强自己的编程能力。
c++面向对象程序设计大作业
《面向对象程序设计》 大作业 题目学生成绩管理系统 学院 专业 班级 姓名 指导教师 2015 年11 月11 日
目录 一大作业的目的 (1) 二大作业的内容............................ . .. (2) 三大作业的要求与数据............... ...... . (3) 四大作业应完成的工作.................. . (4) 五总体设计(包含几大功能模块)........... . (5) 六详细设计(各功能模块的具体实现算法——流程图) (6) 七调试分析(包含各模块的测试用例,及测试结果) (7) 八总结 (8) 十参考资料 (9)
一大作业的目的 《面向对象程序设计》是一门实践性很强的课程,通过大作业不仅可以全方位检验学生知识掌握程度和综合能力,而且还可以进一步加深、巩固所学课程的基本理论知识,理论联系实际,进一步培养自己综合分析问题和解决问题的能力。更好地掌握运用C++语言独立地编写、调试应用程序和进行其它相关设计的技能。 二大作业的内容 对学生信息(包括学号、语文、数学、英语、平均分)进行管理,包括学生成绩的信息输入、输出、查询、删除、排序、统计、退出.将学生的成绩信息进行记录,信息内容包含:(1)学生的学号(2)学生的姓名(3)学生的成绩。假设,现收集到了一个班学生的所有成绩信息,要求用C语言编写一个简单的成绩管理系统,可进行录入、查询、修改和浏览等功能。学习相关开发工具和应用软件,熟悉系统建设过程。 三大作业的要求与数据 1、用C++语言实现系统; 2、对学生信息(包括学号、姓名、语文、数学、英语、平均分)进行管理,包括学生成绩的信息输入、输出、查询、删除、排序、统计、退出. 3、学生信息包括:其内容较多,为了简化讨论,要求设计的管理系统能够完成以下功能: (1) 每一条记录包括一个学生的学号、姓名、3门课成绩 (2)、成绩信息录入功能:(成绩信息用文件保存,可以一次完成若干条记录 的输入。) (3)、成绩信息显示浏览功能:完成全部学生记录的显示。 (4)、查询功能:完成按姓名查找学生记录,并显示。 (5)成绩信息的删除:按学号进行删除某学生的成绩. (6)、排序功能:按学生平均成绩进行排序。 (7)、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!
vb大作业 实验报告
软件技术实验报告 学号2009300186 姓名赵佶男班级010109卓 越 大作业机房管理系统 课题基本目标要求: 1)可在系统中由系统管理员按班级指定时间进行上机课时安排,安排上机不得与其他已安排机时冲突。 2)在指定上机课时段,除了上机班级学生可以登录外,其余无关学生一律不得登录,除非系统管理员授权。预定上机时间结束时,自动 提前5分钟提示,待真正结束时即自动锁屏。 3)除上机课时安排以外,可以在机动时间段接受学生凭个人一卡通上机,且上机实施计时自动收费(即扣除学生一卡通上因上机而应缴 纳的上机服务费) 4)在接受零散学生付费上机时,可自动为其分配空闲机器并授权使用,在分配机器时应考虑机器的使用情况分布均匀,即每次分配机器是 前一时段未曾使用的机器,当学生一卡通上的余额,不足以支付1 小时上机服务费时,应提示其下机充值,并实施锁屏。 实验步骤: 首先,根据大作业的要求,我建立了机器表,流水表,学生基本情况表,上课表,以及一卡通表五个数据库表。机器表用来按照使用情况,选择空闲时间最长的机器。流水表用来记录现在机器以及人员使用的情况,是个
动态表,用来方便的取用和修改数据。学生基本情况表用来存放学生的学号,密码,班级等基本情况,以实现学生上课登录和自由登录。上课表存放各个班级的上课下课时间,以实现排课功能。一卡通表记录了每个学生一卡通内的金额,用来帮助实现上下机的扣费,以及余额不够支付一小时时间情况下得强制下机。 然后,我进行了窗体的设计。经过筛选优化,我设计了五个窗体,分别是主选择窗体,注册窗体,登录窗体,上课安排窗体,实时计费和下机窗体。 主选择窗体可以用来进行上课登录、学生自由登录、管理员登录和机器的推荐。注册窗体是用来进行学生登录密码的注册。登录窗体限制学生的学号和密码必须匹配才能登录。上课安排窗体可以输入班号、上下课时间并选择星期值。实时计费和下机窗体用来扣费并方便学生随时下机。 接下来,要按照要求进行代码的编写。 A)可在系统中由系统管理员按班级指定时间进行上机课时安排,安排上机不得与其他已安排机时冲突。 此功能我在排课窗体下用select选择出全体班级的上下课以及星期值,并将管理员希望的上下课时间转换为时间类型数值,进行循环比较,用do until 语句逐个比较,使得上下课时间点都不得在其他班级的上课时间段内。如果时间不冲突,就实施修改数据库的功能,并更新保存。 B)在指定上机课时段,除了上机班级学生可以登录外,其余无关学生一律不得登录,除非系统管理员授权。预定上机时间结束时,自动提前5分钟提示,待真正结束时即自动锁屏。 在主选择窗体内有上课登录按钮和自由登录按钮。点击上课登录,输入学
作业空间设计
第八章作业空间设计 第一节作业空间设计得基本原则 作业空间设计时,一般应遵守以下原则: 1.根据生产任务与人得作业要求,首先应总体考虑生产现场得适当布局,避免在某个局部 得空间范围内,把机器、设备、工具与人员等安排得过于密集,造成空间劳动负荷过大。然后再进行各局部之间得协调。在作业空间设计时,总体与局部得关系就是相互依存与相互制约得。若总体布局不好,就不能保证每个局部都有适当得作业空间。而只保证个别局部有适当得作业空间,也不能保证整个工作系统得安全、高效、舒适与方便得人机工程学要求。因此,必须正确协调总体设计与局部设计相互之间得关系。 2.作业空间设计要着眼于人,落实于设备。即结合操作任务要求,以人员为主体进行作业 空间得设计。也就就是首先要考虑人得需要,为操作者创造舒适得作业条件,再把有关得作业对象(机器、设备与工具等)进行合理得排列布置。否则往往会使操作者承受额外得心理上得与体力上得负担,其结果不仅降低工作效率,而且往往不经济、也不安全。考虑人得活动特性时,必须考虑人得认知特点与人体动作得自然性、同时性、对称性、节奏性、规律性、经济性与安全性。在应用有关人体测量数据设计作业空间时,必须合格证至少在 90%得操作者中具有适应性、兼容性、操纵性与可达性。 第二节工作空间人体尺寸及应用原则 1.工作空间立姿人体尺寸(6 项) 2.工作空间坐姿人体尺寸(5 项) 2.工作空间跪姿、俯卧姿、爬姿人体尺寸(6 项) 第三节工作空间设计 一、工作空间设计得一般原则 在 GB/T 16251--1996《工作系统设计得人类工效学原则》中,给出了工作空间设计得以 下一般性原则: 1)操作高度应适合于操作者得身体尺寸及工作类型,座位、工作面(工作台)应保证适宜 得身体姿势,即身体躯干自然直立,身体重量能得到适当支撑,两肘置于身体两侧,前臂呈水平状。2)座位调节到适合于人得解剖、生理特点。 3)为身体得活动,特别就是头、手臂、手、腿、脚得活动提供足够得空间。 4)操纵装置设置在肌体功能易达或可及得空间范围内,显示装置按功能重要性与使用频度 依次布置在最佳或有效视区内。5)把手与手柄适合于手功能得解剖学特性。 第四节工作岗位设计
面向对象程序设计实验指导书讲解
面向对象程序设计实验指导书 实验一、C++开发环境应用入门(2学时)(选做) 1、实验目的 (1)了解C++开发工具的特点 (2)熟悉C++开发环境 (3)学习用C++编写标准的C++程序 2、实验任务 使用C++来建立一个非图形化的标准C++程序,编译、运行下例程序: #include
2016年电大面向对象程序设计技术-作业题
2015秋季学期计算机科学与技术本科 《面向对象程序设计技术》作业题 (在电大在线该课程讨论区跟帖提交,注明姓名和学号以记录成绩)选择题 1.可以在本类及派生类的成员函数中进行访问的访问控制修饰符是(B) A.private B.protected C.public 2.在IDE中将编程项目采用多文件结构下,类的定义一般放在(A) A.头文件 B.程序文件 C.主程序文件 3.内联成员函数在类外定义时要将其和类定义一起放在(A) A.头文件 B.程序文件 C.主程序文件 4.下面哪个内存区域是C++中的运行时动态内存分配区域?( D ) A.代码区 B.栈区 C.数据区 D.堆区 5.对象作为函数参数使用时,一般使用(A)形式 A.引用 B.指针 C.对象拷贝
6.同类的多个不同对象的数据成员值各有不同,但不同对象可以共享类的成员函数代码, 实际调用成员函数时,是通过(B )来区分不同对象的。 A.显式给出不同对象不同地址 B.隐含的this指针 C.引用 7.下面哪一种情况不会自动调用拷贝构造函数。(E) A.用一个对象初始化另一个对象时 B.当一个对象作为值传递给一个函数时 C.当一个对象作为值从一个函数返回之前,该对象被拷贝到栈区 D.函数调用结束后,栈区中的返回对象拷贝给主调程序的对象 E.建立指向对象的指针并初始化指针值时 8.下列哪些对象的数据成员类型可以不用初始化表的方式进行初始化(D) A.常量数据成员 B.引用数据成员 C.类中对象成员 D.一般数据成员 9.下列哪一种类设计一般无需在类中设计静态数据成员以使建立的多个对象共享静态数 据数据成员。( D ) A.一个链表类的头指针和尾指针 B.一个学生类中用于保存建立了多少个学生对象的计数器 C.银行帐号类中的年利率 D.一般只用于建立一个对象的类 10.一个类中的公有(public)性质的静态数据成员,以下哪一种访问方式是错误的(D) A.对象名.静态数据成员名 B.指向对象的指针—>静态数据成员名 C.类名::静态数据成员名 D.类名.静态数据成员名 11.下列哪一个运算符不能够被类所重载(E) A.“.”成员访问运算符 B.“*”成员指针访问运算符 C.“::”域运算符 D.“?:”条件运算符 E.“=”赋值运算符
《面向对象程序设计》实验指导书
《面向对象程序设计》课程实验指导书
实验一 Java开发环境的安装与配置 一、实验目的: 1. 掌握JDK、Eclipse的安装步骤。 2. 理解环境变量PATH, CLASSPATH的作用,以及Eclipse的配置。 3. 熟悉Eclipse的编辑、编译与调试环境,编写简单的Application程序 编译执行并完成调试。 二、实验内容: 熟悉JDK的安装和配置,学习如何编写并运行简单的Application程序 (能输出一条简单的问候信息); 三、实验要求: 1. 能正确地安装JDK 2. 熟悉环境变量PATH, CLASSPATH设置方法,熟悉编辑环境 3. 调试程序、编译,运行后得到正确的结果 四、实验步骤: 1.从https://www.360docs.net/doc/eb15636753.html,/technetwork/java/index.html上下载最新版本的JDK,并安装。 2.设置环境变量PATH, CLASSPATH, 使得Java程序能正确编译和执行。 3.在Eclipse环境下编写一个HelloWorld.java程序, (1)在主方法static public void main(String[ ] args)中调用System. out.println()方法,使程序输出一条问候信息; (2) 编译运行程序,观察运行情况和输出结果。(使用JDK环境,调用 javac.exe和java.exe编译和执行程序)
实验二 Java语言基础 一、实验目的: 熟悉Java基本语法,基本数据类型,各种运算符及表达式的使用,掌握运算符优先级,熟悉使用Java的选择语句,循环语句。 二、实验内容: 1.编写Java Application程序,输出1900年到2000年之间的所有润年。 (闰年的判断条件:能被4整除且不能被100整除,或能被400整除); 2.金字塔:Pyramid.java 在屏幕上显示一个由星型符号“*”组成的金字塔图案,示例如下: * *** ***** ******* 要求:金字塔高度h,可以由用户设置。 三、实验要求: 1. 正确使用Java语言的选择语句,循环语句; 2. 调试程序、编译,运行后得到正确的结果 3.写出实验报告。要求记录编译和执行Java程序当中的系统错误信息提成 示,并给出解决办法。 四、实验步骤: 1.编写主类; 2.在static public void main(String[ ] args)方法中加入实现要求功能 的代码,主要步骤如下: (第一题)从1900到2000循环,按照闰年的判断条件是则输出1900年到2000年之间的所有润年。 (第二题)允许用户设置金字塔高度。 4. 编译运行程序,观察输出结果是否正确。
UML大作业实验报告
UML 建模大作业实验报告 组号:选题名:E-store 网上书店系统小组成员
.1.需求模型 从用户角度描述系统功能的用例 登录 (from Use Case View) .J 八. 修改 (from Use Case View) 个人信息维护 (from Use Case View) 从系统管理员角度描述系统功能的用例 (from Use Case View) 补充 注册 选购 (from Use Case View) * II f (from Use Case View) f 令查看 图书浏览 (from Use Case View) II 7 ------- 亠 '收藏夹维护 (from Use Case View) ' (from Use Case View) 游客 会员 (from Use Case View) (from Use Case View) 购物车管理 添加 I (from Use Case View), (from Use Case View) 图书查询 (from Use Case View) ■订单维护 (from Use Case View) 删除 (from Use Case View) 结账 (from Use Case View) 订单状态查询 (from Use Case View) 缺书登记 (from Use Case View) 一 一' 意见反馈 (from Use Case View)
■分配权限 管理员(from Use Case View) 添加人员(from Use Case View) (from Use Case View) 后台用户管理 ---- 弋 (from Use Case View) ■ > ^,X**(from Use Case View) (from Use Case View) 折扣管理 Z I 身份验证 (from Use Case View) ? 、 销售管理 (from Use Case View) 二d ____ - \图书管理 \ h - ■■■ ■ (from Use Case View) .辿—-- 网站用户管理 V (from Use Case View) 订货管理 (from Use Case View) 查看人员 (from Use Case View) 查看意见反馈 (from Use Case View) 2.分析模型 2.1.架构模型 (from Use Case View) r梟—_ ■<- ■- V 删除 '■ (from Use Case View) 辽二询 (from Use Case View) / 统计 (from Use Case View) 订货通知 (from Use Case View) ,沖后台数据库 (from Use Case View) / (from Use Case View) 服务商 (from Use Case View)
面向对象程序设计(答案)
学号:姓名: 第三章面向对象程序设计作业 一、判断题 1、一个Java源程序可有多个类,但只仅有一个public类,而且程序名与public类名相同。对 2、如果类A和类B在同一个包中,则除了私有成员外,类A可以访问类B中所有的成员。对 3、接口中的成员变量全部为常量,方法为抽象方法。对 4、抽象类可以有构造方法,可以直接实例化。错 5、对static方法的调用可以不需要类实例。对 6、包含抽象方法的类一定是抽象类。对 7、方法中的形参可以和方法所属类的属性同名。对 8、接口无构造器,不能有实例,也不能定义常量。错 9、类的实例对象的生命周括实例对象的创建、使用、废弃、垃圾的回收。对 10、Java应用程序的入口main方法只有一种定义法。对 二、选择题 1、下列答案正确的是(A ) A) 在同一个Java源文件中可以包含多个类,只能有一个被声明为public B) 在同一个Java源文件中只能包含一个类,并被声明为public C) 在同一个Java源文件中可以包含多个类,都可以被声明为public D) 在同一个Java源文件中可以包含多个类,只能有一个被声明为default 2、Java实现动态多态性是通过( B )实现的。 A) 重载B) 覆盖 C) 接口D) 抽象类 3、下列哪一个是正确的方法重载描述( A ) A) 重载方法的参数类型必须不同 B) 重载方法的参数名称必须不同 C) 返回值类型必须不同 D) 修饰词必须不同 4、final关键字不可以用来修饰( D ) A) 类B) 成员方法 C) 域D) 接口 5、接口的所有成员方法都具有( B )属性 A) private, final B) public, abstract C) static, protected D) static 6、Java的封装性是通过(A )实现的 A) 访问控制B) 设计内部类 C) 静态域和静态方法D) 包 7、下列接口或类不属于.*包的是( D ) A) Collection B)Vector C) Map D) Integer 8、下述哪一组方法,是一个类中方法重载的正确写法( A ) A) int addValue( int a, int b ){return a+b;}
C++面向对象程序设计实验报告
C++面向对象程序设计实验报告 学院:信息科学与技术学院 班级:卓越电子1201 姓名:刘强 学号:120910115 实验二 C++面向过程程序设计 实验目的 掌握函数声明、定义和使用的方法 掌握函数递归调用的方法 实验内容 1、编写一个函数,求数列运算中从n个不同的数中取r个数的所有选择的个数,要求如下:主程序中设计一个循环,不断从输入接收n和r的值,计算结果并输出,当用户输入0 0时,程序结束; 能检查输入数据的合法性,要求n>=1并且n>=r; 能得到正确结果。 输入:5 3输出:10 输入:10 20;输出:Input Invalid !; 输入:-1 4;输出:Input Invalid!; 步骤: 利用一个函数fn(int n)计算n!, 利用另一个函数Cnr(int n, int r)计算Cnr,在该函数中调用fn(), 程序代码: #include int Cnr(int n,int r) { cout<<"Please input two numbers:"< 学生实验报告 实验课名称: C++程序设计 实验项目名称:综合大作业——学生成绩管理系统专业名称:电子信息工程 班级: 学号: 学生: 同组成员: 教师: 2011 年 6 月 23 日 题目:学生成绩管理系统 一、实验目的: (1)对C++语法、基础知识进行综合的复习。 (2)对C++语法、基础知识和编程技巧进行综合运用,编写具有一定综合应用价值的稍大一些的程序。培养学生分析和解决实际问题的能力,增强学生的自信心,提高学生学习专业课程的兴趣。 (3)熟悉掌握C++的语法和面向对象程序设计方法。 (4)培养学生的逻辑思维能力,编程能力和程序调试能力以及工程项目分析和管理能力。 二、设计任务与要求: (1)只能使用/C++语言,源程序要有适当的注释,使程序容易阅读。 (2)至少采用文本菜单界面(如果能采用图形菜单界面更好)。 (3)要求划分功能模块,各个功能分别使用函数来完成。 三、系统需求分析: 1.需求分析: 为了解决学生成绩管理过程中的一些简单问题,方便对学生成绩的管理 (录入,输出,查找,增加,删除,修改。) 系统功能分析: (1):学生成绩的基本信息:学号、、性别、C++成绩、数学成绩、英语成绩、 总分。 (2):具有录入信息、输出信息、查找信息、增加信息、删除信息、修改信息、 排序等功能。 2.系统功能模块(要求介绍各功能) (1)录入信息(Input):录入学生的信息。 (2)输出信息(Print):输出新录入的学生信息。 (3)查找信息(Find):查找已录入的学生信息。 (4)增加信息(Add):增加学生信息。 (5)删除信息(Remove):在查找到所要删除的学生成绩信息后进行删除并输出删除后其余信息。 (6)修改信息(Modify):在查到所要修改的学生信息后重新输入新的学生信息从而进行修改,然后输出修改后的所有信息。 (7)排序(Sort):按照学生学号进行排序。 3.模块功能框架图 目录 第一章、需求分析 (2) 1 、需求概述 (2) 2 、功能简介 (2) 第二章、概念结构设计 (3) 1、在员工实体内的E-R图 (3) 2、部门实体内的E-R图 (3) 3、在工资实体内的E-R图 (3) 第三章、逻辑结构设计 (4) 第四章、物理结构设计 (4) 第五章、数据库的实施和维护 (5) 一、数据库的创建 (5) 二、表格的建立 (5) 1、建立Employsse表插入数据并设计相关的完整性约束 (5) 2、建立departments表插入数据并设计相关的完整性约束 (7) 3、建立 salary表插入数据并设计相关的完整性约束 (8) 三、建立视图 (9) 四、建立触发器 (10) 五、建立自定义函数 (12) 六、建立存储过程 (13) 第六章、总结 (14) 第一章、需求分析 1 、需求概述 针对现代化公司管理情况,员工管理工作是公司运行中的一个重环节,是整个公司管理的核心和基础。它的内容对于公司的决策者和管理者来说都至关重要,所以公司管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件工籍,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 公司员工管理系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性。 能够进行数据库的数据定义、数据操纵、数据控制等处理功能,进行联机处理的相应时间要短。 具体功能包括:系统应该提供员工数据的插入、删除、更新、查询;员工基本信息查询的功能。 2 、功能简介 员工管理系统它可以有效的管理员工信息情况。具体功能有以下几个方面。基本信息的添加,修改,删除和查询。学生信息管理包括添加、查看学生列表等功能。 面向对象分析/设计课程大作业 银行业务处理系统 13级软件学院测试班 1367004029 曾丹 1.需求分析 随着社会经济的发展,信息化程度的不断深入,银行的传统业务己愈来愈不能满足银行客户的需要。 现今,人们的金融意识、科技意识己经有了很大的提高,在紧张忙碌的生活中,己越来越来不习惯每月奔忙于各银行营业柜台之问去排队缴各种各样的费用了;同时,各种经营单位如电信、移动、供电、煤气、自来水、证券等等一是为了提高服务质量、方便客户,二是为了减轻自己日趋繁重的工作量,纷纷委托银行为其开展代收代付业务:同时,随着我国加入世贸组织的日益临近,我国的银行业将面临更加激烈的同业竞争,如何提供更多的金融产品和更优质的服务,如 何吸引更多的客户,如何利用计算机技术加强银行帐户信息管理、进行银行业务再造,提高银行的工作效率和业务竟争能力是摆在各家银行面前的一个迫切需要解诀的问题。 近几年来,各商业银行加快了与社会各业的合作,利用自身的网点优势和业务特点,为其提供各种高效、快捷的代收代付业务,也就是中间代理业务,目前以与广大人民群众生活密切相关的各项缴费业务如水电费、电话费、手机费等代收业务为主,这些业务开展方式多种多样,但一般都离不开计算机的高效管理支持。 随着代理业务不断发展,业务品种越来越多,各项业务做法互有差异,这就对银行的电子化水平和相应的管理水平提出了更高的要求。如何利用电子化的手段构建一个高效统一的、通用灵活的系统来管理各种各样的业务,是每个商业银行所要研究的课题。支持决策系统的,需要在数据库的基础上,进行联机分析处理,每次处理的数据量大,响应时间长。 特别是银行每天要处理大量的存取款事件,做好存取款是银行工作重要的环节,然而要有效处理必须要有良好的程序和数据管理系统来建立一个良好的软件系统来实现快速、有效、准确、安全的处理银行事物。 主要用于银行的储蓄卡管理系统,它可以帮助我们有效、准确、并且高效实现的完成存取事件。此系统操作方便效率、安全性高,只要客户开户并设定好密码就可以轻松的实现存取款。 系统实现的主要有储蓄卡开户管理、存取款管理、用户查询历史数据显示、注销等功能。 储蓄卡开户管理模块:卡号、姓名、开户金额、身份证号、地址、电话、密码、确认密码和保存组成。(开户金额必须是数字,密码和确认密码必须一样是六位数字) *注销模块:一旦注销该卡号就不存在且余额提醒你取出。 通过该银行账户管理系统地运行,使办公人员可以轻松快捷的完成对账户管理的任务,提高账目管理效率,使银行的账目管理工作系统化、规范化、自动化。 该银行帐目管理信息系统,优点是设计过程思路清晰、模块划分简洁,设计各阶段分工明确。经过实践证明,该划分是合理的,极大得提高了本系统的实现。 数字图像处理综合实验报告 车牌识别技术(LPR) 组长:__ ******_____ 组员:___ _****** _ ___ _******_____ ____ _*******___ 指导老师:___ *******_____ *****学院****学院 2010年6月10日 实验五车牌识别技术(LPR) 一、实验目的 1、了解车牌识别系统的实现,及车牌识别系统的应用; 2、了解并掌握车牌识别系统如何实现。 二、实验内容 1、车牌识别系统的图像预处理、 2、车牌定位、 3、字符分割 4、字符识别 三、实验原理 车辆牌照识别(LPR)系统是一个专用的计算机视觉系统,它能够自动地摄取车辆图像和识别车牌号码,可应用在公路自动收费、停车场管理、失窃车辆侦察、门卫系统、智能交通系统等不同场合。LPR系统的广泛应用将有助于加快我国交通管理自动化的进程。 1、预处理 摄像时的光照条件,牌照的整洁程度,摄像机的状态(焦距,角度和镜头的光学畸变),以及车速的不稳定等因素都会不同程度的影响图像效果,出现图像模糊,歪斜或缺损,车牌字符边界模糊不清,细节不清,笔画断开,粗细不均等现象,从而影响车牌区域的分割与字符识别的工作,所以识别之前要进行预处理。预处理的包括: 1)消除模糊—— 用逆滤波处理消除匀速运动造成的图像运动模糊 2)图像去噪。 通常得到的汽车图像会有一些污点,椒盐噪声,应用中值滤波 3)图像增强 自然光照度的昼夜变化会引起图像对比度的不足,所以必须图像增强,可以采用灰度拉伸,直方图均衡等 通过以上处理,提高了图像的质量,强化了图像区域。 2、车牌定位 自然环境下,汽车图像背景复杂、光照不均匀,如何在自然背景中准确地确定牌照区域是整个识别过程的关键。首先对采集到的视频图像进行大范围相关搜索,找到符合汽车牌照特征的若干区域作为候选区,然后对这些侯选区域做进一步分析、评判,最后选定一个最佳的区域作为牌照区域,并将其从图象中分割出来。 ? 图像的灰度化 ? 图像灰度拉伸 ? 对图像进行边缘检测 采用Sobel 算子经行边缘检测 该算子包含两组3*3的矩阵,分别为横向及纵向,将之与图像作平面卷积,即可分别得出横向及纵向的亮度差分近似值。如果以A 代表原始图像,Gx 及Gy 分别代表经横向及纵向边缘检测的图像,其公式如下: A Gx *]101202101?????+-+-+-?????= and A *121000121Gy ?? ?? ? ---+++?????= 图像的每一个像素的横向及纵向梯度近似值可用以下的公式结合,来计算梯度的大小。 2 y 2 x G G G += 然后可用以下公式计算梯度方向。 ??? ? ??=x y G G arctan θ 在以上例子中,如果以上的角度θ等于零,即代表图像该处拥有纵向边缘,左方较右方暗。 ? 对其进行二值化 ? 纹理分析法 行扫描行法是利用了车牌的连续特性。车牌区域有连续7个字符,而且字符与字符之间的距离在一定范围内。定义从目标到背景或者从背景到目标为一个跳变。牌照区域相对于其它非车牌区域跳变多,而且间距在定范围内和跳变次数大于一定次数,并且连续满足上述要求的行要达到一定的数目。 从下到上的顺序扫描,对图像的每一行进行从左向右的扫描,碰到跳变点记录下当前位置,如果某行连续20个跳变点以上,并且前一个跳变点和后一个跳变点的距离在30个像素内,就记录下起始点和终止点位置,如果连续有10行以上这样的跳变点,我们就认为该区域就是车牌预选区域。 3、字符分割: 完成牌照区域的定位后,再将牌照区域分割成单个字符,然后进行识别。字符分割一般采用垂直投影法。由于字符在垂直方向上的投影必然在字符间或字符内的间隙处取得局部最小值的附近,并且这个位置应满足牌照的字符书写格式、字符、尺寸限制和一些其他条件。利用垂直投影法对复杂环境下的汽车图像中的字符分割有较好的效果。 ? 车牌区域灰度二值化c++大作业学生实验报告
sql大作业实验报告
面向对象程序设计大作业(C++)
车牌识别综合实验报告大作业
面向对象程序设计作业参考答案