《面向对象程序设计》课程设计
实验指导书
武汉理工大学理学院
物理科学与技术系
2013年2月1日
目录
设计一简单计算器 (1)
设计二模拟时钟程序 (4)
设计三 24点游戏 (8)
设计四多媒体视频播放器 (11)
设计五幸运52 (14)
设计六简单画图程序 (17)
课程设计说明书要求 (20)
设计一简单计算器
一、概述
在运算过程中,通过使用计算器能减少运算量。既可以用“计算器”的标准视图执行简单的计算,也可以用其科学型视图执行高级的科学计算。用户使用“计算器”执行所有通常用手持计算器完成的标准操作。
简单计算器包括双目运算和单目运算功能。双目运算符包含基本的四则运算及乘幂功能,单目运算符包含正余弦,阶乘,对数,开方,倒数等运算。简单计算器可对输入任意操作数,包括小数和整数及正数和负数进行以上的所有运算并能连续运算,同时包含清除,退格,退出功能。简单计算器出现错误会给出相应错误提示。而且可以操作与运算按钮相对应的菜单项。
通过对简单计算器的设计,可以熟悉MFC编程,包括Visual C++在数学计算方面的知识、算法设计、对话框和控件的使用及应用程序的调试,同时对面向对象与可视化程序设计有一定的认识,并提高动手编程的能力。
二、设计任务
1、提出总体方案的设计思想和原理,绘制程序流程图和描述程序的功能,并说明程序的特点和难点。具体如下:
执行简单计算:
(1) 键入计算的第一个数字。
(2) 单击“+”执行加、“-”执行减、“*”执行乘或“/”执行除。
(3) 键入计算的下一个数字。
(4) 输入所有剩余的运算符和数字。
(5)单击“=”。
执行科学计算:能够执行阶乘、正弦、余弦和指数运算。
2、添加相关控件,制作与用户交互性较好的应用程序界面。
3、进行按钮事件处理,编写代码,完成整体设计。
4、调试程序,达到所要求的功能。
三、设计步骤
1、初始界面设计
要求应用程序中包含菜单操作和帮助,合理排列各个控件的位置,具体可参照Windows中的标准型计算器:
或如下图所示的简单型计算器:
3 具体设计
(1) 创建应用程序框架。
(2) 创建对话框资源,添加成员处理函数和成员变量。
(3) 添加消息处理函数。
(4) 添加完成各个功能的代码。包括处理输入、处理计算和处理显示。
4 程序的完善
(1) 添加处理科学计算的功能。
(2) 加入键盘处理。
5 重点和难点
在设计过程中,要注意考虑运算的优先级问题、数制的转换算法和界面的布局显示、使用菜单进行相关控制。
四、思考题
1、程序中如何实现小数的显示与运算?
2、描述等号对应的消息处理函数中需要处理的问题及相应的实现代码?
3、(选做)若实现了科学型和标准型,说明科学型和标准型实现的关键算法?
设计二模拟时钟程序
一、概述
计时器是程序中最常用的后台任务机制之一,其时间间隔最低约55毫秒,被广泛用于时钟、磁盘备份程序或需要在某一时刻运行的程序等。而模拟时钟是一种集计时器和时钟显示于一体的程序。
以实例为背景学习基于MFC的WINDOWS应用程序设计,编写一个指针式时钟程序,此程序在屏幕正中有一个指针式钟面,屏幕下方或右方以数字方式显示日期和时间。指针式的时钟表盘为椭圆形或圆形,并且圆周上有分布均匀的12个刻度,刻度要求显示清晰,钟面上有长度和颜色及粗细各不相同的指针,即时针、分针、秒针,以便各个指针重合时亦可以轻易辨认,指针的运动要求具有规律性,且为顺时针。数字钟的钟面为一个规则的矩形,其显示时间的格式是时:分:秒,小时为24进制,分钟和秒是60进制,指针式的时钟和数字式的时钟显示的时间同步,且两个时钟所显示的时间与计算机的系统时间一致。
通过对指针式时钟的设计,可以掌握API或MFC编程,其中包括各种视图类的作用、绘图函数的使用、计时器的操作、对话框的使用及应用程序的调试,同时对面向对象与可视化程序设计有一定的认识,并提高动手编程的能力。
二、设计任务
1、提出总体方案的设计思想和原理,绘制程序流程图和描述程序的功能,并说明程序的特点和难点。
2、编程要求
(1)为该程序设计一个美观大方的图标。
(2)程序界面设计合理,色彩得体大方,显示正确。
(3)用绘图函数绘制钟的界面图。时针、分针和秒针形象美观,即使各指针重合也可辨认。
(4)各指针运动规律正确。
(5)客户区中显示数字时钟,数字式时钟的时间显示与指针式时钟显示一致。
(6)提供对话框由用户设置当前新的时间。
3、调试程序,达到所要求的功能。
三、设计步骤
1、钟面功能设计
根据自己的考虑绘制钟的界面图,具体也可参照下图:
或另一种方案图:
总体显示效果如下:
2、具体设计
本题主要涉及到的知识点有:时钟指针运动算法、屏幕重绘方法、定时器消息、菜单命令、对话框、画笔/画刷、显示文字等。指针运动算法和屏幕重绘方法是本程序主要难点所在。
不论何种指针,每次转动均以π/30弧度(一秒的角度)为基本单位,且都以表盘中心为转动圆心。计算指针端点(x, y)的公式如下:x =圆心x坐标 + 指针长度* cos (指针方向角)
y =圆心y坐标 + 指针长度* sin (指针方向角)
注意,指针长度是指自圆心至指针一个端点的长度(是整个指针的一部分),由于指针可能跨越圆心,因此一个指针需要计算两个端点。
三个指针的运动是相关联的,秒针转一圈引起分针运动一格,分针转一圈引起时针运动一格,因此应该使用一个定时器消息来处理指针的运动。
(1) OnDraw()函数实现对系统时间的获取和绘制椭圆表面和时钟指针。(2) 设置计时器,创建窗口时启动一个计时器不断发出WM_TIMER消息,调用SetTimer()函数。
(3) 用TextOut()函数显示数字钟。
(4) 添加菜单,用菜单项控制弹出对话框设置显示的时间。
3、重点和难点
(1) 使用计时器需要了解两个函数:SetTimer()函数用来设置一个计时器以指定的时间间隔触发,KillTimer()函数用来使一个正在运行的计时器停止。
(2) 时钟指针的显示和移动是一个需要注意的方面。
(3) 注意屏幕重绘方法。
(4) 掌握如何显示文本,将用户设置的时间更新时钟的显示。
四、思考题
1.程序中如何实现时钟时间与计算机系统时间保持一致?
2.SetTimer()函数和KillTimer()函数的调用位置与程序运行的关系?
3.说明SetTimer()函数、WM_TIMER消息和OnTimer()函数的调用关系?
4.实现数字钟时,涉及到的编程有哪些?
设计三 24点游戏
一、概述
24点游戏是一种常见的数学运算游戏,玩游戏者只需根据系统给出的四张1~10的纸牌算出24即可,而程序主要负责实现随机发牌、结果验算、计算得分、难度设置等功能。
通过对24点游戏的设计,可以熟悉MFC编程,加深对对话框编程的认识和理解,并训练Visual C++在数学计算方面的知识,以及在按钮上设置位图、设置定时器的方法和应用程序的调试,同时对面向对象与可视化程序设计有一定的认识,并提高动手编程的能力。
二、设计任务
1、提出总体方案的设计思想和原理,绘制程序流程图和描述程序的功能,并说明程序的特点和难点。要求具有如下功能:
(1) 按下“发牌”按钮时开始游戏,桌面上显示4张翻开的扑克牌,并且游戏开始计时,进度条开始前进。
(2) 当用户能够将4张牌计算出24时,可以按下“输入算式”按钮,此时游戏计时停止,用户可在编辑框中输入。
(3) 输入结束,用户按下“验算”按钮,计算输入的多项式。验算通过,显示“正确”;验算出错,显示“错误”。
(4) 如果用户希望继续游戏,则可按下“发牌按钮;否则按下“结束游戏”按钮。
2、制作与用户交互性较好的应用程序界面,在对话框中动态显示位图。
3、为各个控件编程代码,完成整体设计。
4、调试程序,达到所要求的功能。
三、设计步骤
1、设计初始界面
设计一个交互性较好的界面,要求有菜单和帮助。具体为:
(1) 用应用程序向导生成一个基于对话框的简单框架。
(2) 生成管理对话框的类,定义成员变量。
(3) 定义消息处理函数。
(4) 引入图片资源。
可参照下图:
2、添加完成各个功能的代码
(1) 扑克牌在对话框中的动态随机显示。使用LoadBitmap()和SetBitmap()方法,使用rand()函数实现随机功能。
(2) 增加计时功能。使用OnTimer(),SetTimer()和KillTimer()方法,利用进度条或时间显示完成计时控制。
(3) 验证算式的算法实现。该算法属于经典算法,可在网上或资料中查找,但需要应用到自己的程序中。
3、重点和难点
(1) 在对话框窗口中显示扑克牌位图;
(2) 随机产生扑克牌的点数;
(3) 根据牌的点数验证算式的正确性;
(4) 计时器正确控制进度条;
(5) 使用时间限制的不同来控制难度级别;
(6) 自己实现或上网查找算式验证算法;
四、思考题
1、改变难度可以变化游戏的限时和游戏加分的规则,如何实现?
2、如何使用随机函数控制扑克牌的显示?
3、考虑如何保证程序是根据给出的牌来书写算式的?
4、(选做)分析算式验证算法,给出流程图?
设计四多媒体视频播放器
一、概述
视频播放工具是目前计算机必备的一个软件,如大家熟悉的Media player、Realplay、金山影霸等。VC提供了多种ActiveX控件来完成视频文件的操作,如RealPlayer控件,Windows Media Player控件,ActiveMovieControl Object控件,ActiveMovie控件等,这些控件对应的播放软件能够播放RM、RMVB、MP3、MPEG、DAT等多种格式的多媒体文件。
通过对多媒体视频播放的设计,可以熟悉多媒体编程和控件编程,加深控件的认识和理解,同时对面向对象与可视化程序设计有一定的认识,并提高动手编程的能力。
二、设计任务
1、提出总体方案的设计思想和原理,绘制程序流程图和描述程序的功能,并说明程序的特点和难点。要求系统能实现单独播放音频文件和单独播放视频文件。
2、创建工程,如需要,制作与用户交互性较好的应用程序界面。
3、为各个控件编程代码,完成整体设计。要求能用菜单和播放条或按钮
控制媒体的播放。
4、调试程序,达到所要求的功能。
三、设计步骤
本设计根据不同的编程方法不同,设计步骤也有所区别。
1.熟悉控件的作用。
2.根据选择的控件,将控件加入建立的工程。
3.查看控件包括的类和函数,了解他们的作用和相互关系。
4.使用控件中提供的类和函数完成媒体播放器的制作。
运行界面可参照下图:
或
2、重点和难点
(1) 若采用MCIWnd类,则需熟悉MCIWnd类的功能;查找资料了解
MCIWnd中各种宏的含义和使用方法;如何使用提供的播放条实现播放功能。
(2) 若使用控件,则需熟悉各种控件的功能和使用的类、成员函数。
四、思考题
1、控件自带的类和本程序中的类是如何共同作用的?
2、说明程序中调用的控件函数的作用?
3、(选做)除了你所使用的方法外,考虑使用下列方法之一完成视频播
放器的制作:RealPlayer控件,VC6.0自带的一个ActiveX控件----ActiveMovieControl Object,可视动画控件ActiveMovie等。
设计五幸运52
一、概述
幸运52是一个流行的电视综艺节目,其核心是在给出商品之后,要求用户迅速猜中该商品的价格,在估价的过程中,系统会提示所估价格相对于实际价格是高了还是低了。
通过对幸运52游戏的设计,可以熟悉MFC编程,加深对对话框编程的认识和理解,设置位图、焦点控制、文件操作和应用程序的调试,同时对面向对象与可视化程序设计有一定的认识,并提高动手编程的能力。
二、设计任务
1、提出总体方案的设计思想和原理,绘制程序流程图和描述程序的功能,并说明程序的特点和难点。要求具有如下功能:
(1) 单击“开始”按钮,游戏开始,系统将输出商品。
(2) 请迅速在输入框中输入您估计的商品价格,然后单击“确定”按钮。(3) 这时系统会提示估计价格与商品价格的差别,在弹出的对话框中单击“确定”按钮,再次输入新的估计值,要求限制用户猜测的次数最多为6次,超过次数限制将自动退出应用程序的运行。若估计值正确,提示后进入下一个商品的估价。
2、制作与用户交互性较好的应用程序界面,在对话框中动态显示位图。
3、为各个控件编程代码,完成整体设计。
4、调试程序,达到所要求的功能。
三、设计步骤
1、设计初始界面
设计一个交互性较好的界面。具体为:
(1) 用应用程序向导生成一个基于对话框的基本框架。
(2) 添加控件并设置属性。
(3) 定义成员变量和定义消息处理函数。
(4) 引入图片资源。
可参照下图:
2、添加完成各个功能的代码
(1) 在类的头文件中加入成员变量。
(2) 在类的构造函数中对成员变量进行初始化。
(3) 完成按钮的消息处理函数,并显示商品名称和位图。使用LoadBitmap()和SetBitmap()方法。
(4) 显示当前游戏的状态信息。
3、完善程序
(1) 输入焦点的控制,用SetFocus方法。
(2) 使用进度条控制游戏的时间。
(3) 对用户的意外操作进行响应,如:未选择商品或未输入商品价格。(4) 系统将保存猜测正确的最多次数和用户名在文件中,当打破最高记录时将显示输入用户名的对话框进行信息的保存。
4、重点和难点
(1) 使用随机方法在对话框窗口中随机显示位图;
(2) 将商品名称和商品图片、商品价格一一对应;
(3) 保存记录和查看最高记录的实现。
四、思考题
1、说明保存记录文件信息的方法,考虑是否还能用其他方法实现?
2、说明商品名称和商品图片、商品价格一一对应的关键部分?
3、如何在游戏未开始时显示空白位图?
设计六简单画图程序
一、概述
在Windows应用程序中,绘图是非常重要的操作。虽然我们可以用已经创建好的位图来显示图形,但是在许多情况下仍然希望应用程序能对视或控件绘图,这就需要了解Windows的绘图机制。任何程序需要直接在屏幕或打印机上绘图,都需要使用图形设备接口,该接口是一个可执行程序:处理来自Windows应用程序的图形函数调用,然后把这些调用传递给合适的设备驱动程序,由设备驱动程序来执行与硬件相关的函数,并产生最后的输出结果。实现图形的绘制还需要使用与图形设备接口相关的设备上下文(DC),它是一种Windows数据结构,包括了与一个设备(如显示器或打印机)的绘制属性相关下信息。所有的绘制操作通过一个设备上下文对象进行,该对象封装了实现绘制线条、形状和文本的Windows API函数。
二、设计任务
1、提出总体方案的设计思想和原理,绘制程序流程图和描述程序的功能。
2、制作与用户交互性较好的应用程序界面,在对话框中实现直线、椭圆、
矩形的绘制,完成图形填充、线宽、线色的控制。
3、为菜单资源和工具栏控件编程代码,完成整体设计。
4、调试程序,达到所要求的功能。
三、设计步骤
1、设计初始界面
设计一个交互性较好的界面。具体为:
(1) 用应用程序向导生成一个基于单文档的简单框架。
(2) 添加菜单资源和工具栏按钮,实现直线、椭圆、矩形的绘制,完成图形填充、线宽、线色的控制,完成界面设计。
(3) 给视图类中为菜单和工具栏按钮添加成员变量和消息处理函数。(4) 初始化成员变量,定义消息处理函数。
可参照下图:
2、添加完成各个功能的代码
(1) 绘制直线、椭圆、矩形,调用封装的实现绘制线条、形状和文本的Windows API函数
(2) 控制图形填充和线色,利用CColorDialog类调用“颜色”通用对话框进行填充色选择。
(3) 控制调整线宽。
(4) 实现菜单项和工具栏按钮的统一控制,实现可视化操作(菜单和按钮的状态控制)。
3、重点和难点
(1) 使用CColorDialog类调用“颜色”通用对话框进行填充色选择。(2) 程序需要通过鼠标确定绘图与否状态、绘图的起始位置和终止位置,鼠标消息处理函数的处理。
(3) 设备上下文(DC)中大量API函数的功能调用。
实验1 流程程序分析 一、实验目的 1、学会用程序分析符号、记录并绘制某产品(或零件、服务)的流程程序图。 2、学会用“5W1H”分析(完成了什么?何处做?何时做?由谁做?如何做?为什么要这样做?)技术发掘问题,用“ECRS”原则来改进程序。 二、实验说明 1、流程程序分析是以产品或零件的加工全过程为对象,运用程序分析技巧对整个流程程序中的操作、搬运、贮存、检验、暂存五个方面加以记录和考查、分析。流程程序分析是对生产现场的宏观分析,但它比工艺流程更具体、内容更详细,用途更广泛。 2、运用“5W1H”提问技术,对“操作”、“搬运”、“贮存”、“检验”、“暂存”五个方面进行考查、逐项提问,从而达到考查、分析、发掘问题的目的。 3、在发掘问题的基础上,应用取消、合并、重排、简化四大原则来建立新的程序。 三、实验器材 电子天平、电子秒表、计算器、胶带台、胶带、胶水、记录板、A4纸、包装纸、物流箱等。 四、实验分组 5~6人一组,1人模拟顾客,1人模拟邮局业务员,1人使用记录板记录,1人使用电子秒表测时,其他人认真观察,做些辅助工作。 五、实验内容及步骤 本实验模拟邮局邮包发送流程,可参考下列流程进行: (1)顾客到达。(流程分析起点); (2)询问业务; (3)等待顾客填单; (4)从顾客手中接邮包和填好的包裹单;
(5)包装邮寄物; (6)称重; (7)使用计算器计算邮资;(2元起价,含200克,200克以上按1分/克计算邮资) (8)向顾客收取邮资; (9)登帐(实为计算机操作,这里用手工记账代替); (10)贴包裹单; (11)贴邮票; (12)将包裹放入邮件暂存箱; (13)把包裹单第二联交顾客; (14)顾客离开,服务结束。 实验时,先模拟1~2遍,然后负责记录的同学使用流程图符号记录“邮局业务员”的实际工作流程,绘制流程程序分析简图。同时记录时间和移动距离等参考数据。 六、实验报告要求 使用实习报告纸或课程设计纸书写。实验报告应包含以下内容: (1)实验目的;(2)实验器材;(3)实验分组;(4)实验内容与步骤; (5)5W1H分析过程;(6)ECRS改善过程;(7)规范的以为人主的流程程序图(含现行方法和改善方法)。(8)对分析改善进行总结。
1 什么是面向对象程序设计,它与传统的结构式程序有什么不同。 面向对象程序设计是一种适用于设计、开发各类软件的范型。它是将软件看成是一个由对象组成的社会:这些对象具有足够的智能,能理解从其他对象接受的信息,并以适当的行为作出响应;允许低层对象从高层对象继承属性和行为。通过这样的设计思想和方法,将所模拟的现实世界中的事物直接映射到软件系统的解空间。 与传统的结构式程序设计相比,面向对象程序设计吸取了结构式程序设计的一切优点(自顶向下、逐步求精的设计原则)。而二者之间的最大差别表现在: ·面向对象程序采用数据抽象和信息隐藏技术使组成类的数据和操作是不可分割的,避免了结构式程序由于数据和过程分离引起的弊病。 · 面向对象程序是由类定义、对象(类实例)和对象之间的动态联系组成的。而结构式程序是由结构化的数据、过程的定义以及调用过程处理相应的数据组成的 2 用面向对象方法建立模型的思维过程是怎样的。 用面向对象方法建立拟建系统的模型的过程就是从被模拟现实世界的感性具体中抽象要解决的问题概念的过程。这种抽象过程分为知性思维和具体思维两个阶段,其中:·知性思维是从感性材料中分解对象,抽象出一般规定,形成了对对象的普遍认识。·具体思维是从知性思维得到出的一般规定中揭示的事物的深刻本质和规律,其目的是把握具体对象的多样性的统一和不同规定的综合。 3 解释以下概念: ①对象:在现实世界中,对象就是可以感觉到的实体。每个对象具有一个特定的名字以 区别于其他对象;具有一组状态用来描述它的某些特性;具有一组操作,每一个操作决定对象的一种功能或行为(为自身服务的操作和为其他对象提供服务的操作)。而在面向对象系统中,对象是可以标识的存储区域。每个对象的状态被保存在此区域中,而实现一类对象行为的操作(代码)被保存在另外相关的存储器区域中。 ②消息:消息是要求某个对象执行其某种功能操作(方法)的规格说明。因此,消息是 由消息的接收者、消息要求提供的操作(消息名)和必要的参数组成的。 ③类:在现实世界中,类是对一组具有共同特性(属性和行为)的客观对象的抽象。而 在面向对象系统中,类是由程序员自定义的具有特定结构和功能的类型,是一种代码共享的手段。 ④实例:任何一个对象都是该对象所属类的一个具体实例。 ⑤公有消息:是由对象外向对象发送的消息,用于激活该对象的某种方法。 ⑥私有消息:是由对象向自身发送的消息,用于内部操作;该类消息不能从对象外向该 对象发送。 ⑦消息序列:在面向对象系统中一个事件的发生总会有多个对象的多次相互作用才能完 成,使得这些对象能够相互作用的消息组成的序列被称为消息序列。 4 类与实例的关系如何? 类是创建对象的模板,而对象是实现类的实例。属于同一类的不同实例必须具有: ·相同的操作集合; ·相同的静态属性集合; ·不同的对象名和属性动态值。
《工艺综合课程设计》简明指导书 1.设计目的 《机械制造工艺与机床夹具》是一门实践性很强的课程,只有通过实践性教学环节才能使学生对该课程的基础理论有更深刻的理解,也只有通过实践才能培养学生理论联系实际的能力和独立工作能力。该设计的目的就在于: (1)在结束了《机械制造工艺与机床夹具》及有关课程的学习后,通过本次设计使学生所学到的知识得到巩固和加深,并培养学生学会全面综合地应用所学知识,去分析和解决机械制造中的问题的能力。 (2)通过设计提高学生的自学能力,使学生熟悉机械制造中的有关手册、图表和技术资料,并学会结合生产实际正确使用这些资料。 (3)通过设计使学生树立正确的设计思想,懂得合理的设计应该是技术上先进的,经济上合理的并且在生产实践中是可行的。 (4)通过编写设计说明书,提高学生对技术文件的整理、写作及组织编排能力,为学生将来撰写技术及科研论文打下基础。 2.设计内容 (1)编制规定零件的机械制造工艺规程一份; (2)填写规定零件的《机械加工工艺过程卡》一份; (3)填写规定零件某机械加工工序的《机械加工工序卡片》一份; (4)设计规定零件的某机械加工工序的专用夹具一套并绘制其总装图一张; (5)编写设计说明书一份。 3.设计步骤及要求 (1)根据给定的生产纲领,确定生产类型。 (2)分析和审查零件图:读懂零件图;审查该零件的结构工艺性;了解其主要技术要求;区分哪些表面是加工表面,哪些表面是不加工表面;查清各表面的尺寸公差、形位公差、表面粗糙度和特殊要求,区分各表面的精密与粗糙、主要与次要、重要与不重要等相对地位。在此基础上初步确定各加工表面的加工方法。 (3)根据给定的零件材料,确定毛坯种类。并确定加工表面的总加工余量。 (4)拟定零件的机械加工工艺规程:选择粗基准和精基准;确定各表面的加工方法;确定加工顺序;安排热处理工序及必要的辅助工序。 (5)确定各工序的加工设备,刀具及夹具。 (6)对工艺规程中的某道工序使用的夹具进行设计:一般画一张A1图,要求手工绘图。 a. 以有利于反映该工序加工的位置,选取投影视图。用双点划线画出零件轮廓。 b. 在零件定位表面处,画出定位元件或机构。 c. 在夹紧位置处画夹紧机构。 d. 在对刀位置画出对刀元件或刀具导引装置。 e. 画出与机床连接的元件及其它元件。 f. 绘图时要遵守国家标准的规定画法,能用标准件的尽量采用标准件。 g. 为表达清楚夹具结构,应有足够的视图、剖面图、局部视图等。 h. 夹具图上应标注夹具的总体轮廓尺寸,对刀尺寸,配合尺寸及配合公差要求,并标明夹具制造,验收和使用的技术要求。 i. 在夹具图右下角绘制国家标准规定的标题栏和明细表,表中详细列出零件的名称,代号,数量,材料,热处理及其它要求。 (7)确定所设计夹具的工序的工序余量,计算工序尺寸及公差。 (8)确定所设计工序的切削用量及工时定额。 (9)填写工艺文件——工艺过程卡和工序卡各一份。
园艺植物育种学总论实验指导书 黄桂香编著 广西大学农学院园艺系 2013年3月
目录 实验一园艺植物花粉生活力测定(3h) (3) (一)果树花粉生活力测定 (3) (二)蔬菜花粉生活力测定 (6) 实验二、三园艺植物开花习性观察及有性杂交育种(6h) (7) (一)果树开花习性观察及有性杂交育种 (7) (二)蔬菜开花习性观察及有性杂交育种 (8) 实验四、园艺植物品种描述及鉴别(3h) (10) (一)番茄品种描述及鉴别 (10) (二)荔枝品种描述及鉴别 (13) 实验五、种胚分离培养技术(3h) (16) 实验六、园艺植物选择育种(3h) (17) 实验七、园艺植物品种调查及育种方案的制订(6h) (20) 实验八、园艺植物花粉单核期观察(3h) (20)
实验一、园艺植物花粉发芽试验及生活力测定 内容一:果树花粉发芽试验及花粉生活力测定 一、目的要求 练习并掌握果树花粉发芽试验及花粉生活力测定技术 二、材料用具 供试花粉、氯化钙、硼酸、琼脂、蔗糖、凹玻片、棉花、染色瓶、蒸馏水、显微镜、计数器、天平、载玻片、盖玻片、烧杯、镊子、水浴锅、玻璃杯、玻棒、冰箱、温箱、干燥器等。联苯胺、α—萘酚、碳酸钠、酒精、过氧化氢、氯化三苯基四氮吡、磷酸氢二钠、磷酸二氢钾、量筒、量瓶、滴瓶等。 安全提示:因联苯胺、α—萘酚、氯化三苯基四氮唑为易制毒化学品,操作时要按规范要求,避免人体直接接触,注意安全。 三、说明 在有性杂交工作中,常因杂交亲本组合的花期不遇,或亲本植株异地而必须预先收集父本花粉,花粉应贮藏在低温(0—4℃),干燥(相对湿度0—4%)不受阳光直射(或黑暗)的环境下,可以较长时间地保持花粉的生活力,经贮藏或外地采来的花粉,在授粉之前,必须检验花粉的生活力,以确定花粉发芽的可靠程度,这对检验杂交后的效果,具有重要意义。 花粉人工发芽的效果与培养基的配制是否适合有很大关系,培养基常用不同浓度的蔗糖和琼脂1%及蒸馏水配制而成,不同果树的花粉对蔗糖浓度要求不同。一般柑桔花粉要求蔗糖浓度以10—15%为宜;苹果及梨以10—15%为宜,桃以10%为宜。通过控制蔗糖浓度的高低可调节培养基的渗透压,防止播种的花粉在培养基上发生破裂现象。培养基一般以微酸性为宜,pH值相应调整在6—5.2之间,发芽温度控制在20—25℃,并需要空气和较高的湿度。如在培养基中加入少量,更可促进花粉发芽。 的硼酸和维生素B 1 测定花粉生活力,同样是检查花粉的质量,因为做花粉发芽试验时,操作较复杂,设备要求较高,需时也较长。为了简易而迅速地测定花粉的生活力,也有用化学染色的方法测定花粉生活力,但此种方法有一个很大的缺点,就是不能真实地反映出有发芽力的花粉究竟有多少,因为即使染上色的花粉也不一定都具有生活力。所以一般常用而且较为可靠的方法仍然是采用花粉发芽试验,而染色法作为一种粗略的快速测定,还是比较简便的。 四、方法和步骤 (一)花粉发芽试验 (1)培养基的配制:在100毫升蒸馏水中,加入琼脂1克,蔗糖(按果树花粉种类不同的比例加入)和0.01g的硼酸共同置于烧杯中加热煮沸,使琼脂和蔗糖等充分溶解于水中,在加热过程中,由于水分蒸发,必须加入失去的水分,才能保持准确的浓度,然后将烧杯置于水浴锅中(或盛热水的烧杯中)备用,以防培养基冷却凝固 (2)发芽床的装置:用玻棒将冷却前(约50℃)的培养基滴入凹玻片的凹孔中(1—2滴),要求培养基表面必须园正,待其凝固后用作播种花粉之发芽床。 (3)播种花粉用接种丝或头发沾上花粉(花粉事先收集使之干燥,贮藏于干燥器中置于冰箱内)少许,均匀地播种于培育基表面,播种时要防止花粉成团堆集
实验一命题逻辑公式化简 【实验目的】加深对五个基本联结词(否定、合取、析取、条件、双条件)的理解、掌握利用基本等价公式化简公式的方法。 【实验内容】用化简命题逻辑公式的方法设计一个表决开关电路。 实验用例:用化简命题逻辑公式的方法设计一个 5 人表决开关电路,要求 3 人以上(含 3 人)同意则表决通过(表决开关亮)。 【实验原理和方法】 (1)写出5人表决开关电路真值表,从真值表得出5 人表决开关电路的主合取公式(或主析取公式),将公式化简成尽可能含五个基本联结词最少的等价公式。 (2)上面公式中的每一个联结词是一个开关元件,将它们定义成 C 语言中的函数。 (3)输入5人表决值(0或1),调用上面定义的函数,将5人表决开关电路真值表的等价公式写成一个函数表达式。 (4)输出函数表达式的结果,如果是1,则表明表决通过,否则表决不通过。 参考代码: #include