多媒体教学软件设计

2020-12-29 来源:其他范文收藏下载本文

推荐第1篇:多媒体教学软件设计与开发

多媒体教学软件设计与开发

题型:

填空(20分) 翻译(20分) 简答(30分) 论述(15分) 设计(15分)

一、关于ppt的论述和设计 1.设计一个最优化的ppt操作步骤

(1)设置风格。包括设置页面比例,背景,主题,母版,幻灯片的切换,幻灯片内的动画效果。 (2)输入信息。

简洁的文字可以有效的传递信息。

一张好看的图片胜过千言万语。

图表和SmartArt让观众一目了然。

悦耳动听的音乐让人心旷神怡。

适当的视频和Flash是不错的调料。 (3)美化页面。

序号和项目符号不能并存。

字体选择要注意,最好不用宋。

字号过小,无法传递信息。

字色过杂,画面较乱。 (4)修改效果。

2.做一个简单的二维动画。(文字与图结合说明) 3.做一个简单的电子相册。(几百张)

(1)打开ppt,把要做成电子相册的图片导入ppt。点击菜单栏“插入”-“相册”,从本地磁盘批量选中照片。

(2)调整背景。为避免背景单调,可以调整背景的颜色或在背景格式设置中插入背景图片,应用于所有的幻灯片。

(3)设置幻灯片的切换效果。设置幻灯片的切换效果为随机,并应用于所有幻灯片。

若有更为具体的要求,可以具体的为某张幻灯片加上特定的动画效果。

(4)插入音乐。动画设计好后,点击菜单栏“插入”-“声音”,为相册加入一段动听的音乐。

(5)保存本相册,即可进行幻灯片的放映。 4.如何给视频加字幕

(1)打开ppt,执行“插入”菜单项找到“媒体”组中的“视频”,在打开的窗口对话框中选中即将要插入的视频,然后点击“插入”。 (2)如果插入的视频后尺寸不太大,我们点击视频的四边有出现一些小方块,把视频的尺寸拉扯到覆盖整个幻灯片。

(3)点击视频,执行“播放”菜单项的“视频选项”菜单组,将“开始”改为“自动”,即让我们的视频自动播放。

(4)现在来插入字幕,点击菜单项“插入”的“文本框”绘画一个在视频左侧的文本框,把要添加的字幕信息输入,让字幕显示成一行就行。

(5)设置让字幕滚动起来,点击字幕文本框,选择菜单项“动画”,给该文本框添加“飞入”的自定义动画,“效果选项”为“向右侧”。 (6)执行“动画窗格”命令打开“动画窗格”窗口,右击文本动画,设置“从上一项开始”以及选择“效果选项”,在效果选项对话框里面选择“计时”,设置期间为“03:00 秒”(即三分钟,这里看你的视频长度决定),然后确定。

(7)字幕已经添加完成,保存ppt即可。 5.人们使用ppt的主要问题:(合理陈述即可)

①认为ppt是发言稿;②背景和文字混色;③图表曲线复杂; ④堆积过多元素;⑤使用标准模板。 6.如何更好的开发ppt:(合理陈述即可) ①整体设计;②简洁就是美;③打造个性化模板;④调配色彩; ⑤突出重点文本;⑥图文并茂;⑦精制图表;⑧讲究布局; ⑨不断提高;

二、六个简单回答的问题 1.使用文本的基本要求

简明——文本内容应重点突出,段落层次清楚,标题鲜明在满足教学要求的情况下尽可能简短

衔接——从一个题目到另一个题目之问的转换应能使学习者保持思维的连续和流畅

清晰——表述要准确,避免使用有歧义的语言

规范——使用正确的语法、书写、拼写、标点符号等.使用变形的艺 术字时应易于识别

适合学习者阅读水平——编制教学软件时应参考同一水平文字教材的语言表达

2.多媒体教学软件中使用图像和动画的目的

(1)作为主要信息。学习内容的形象性和空间性越强,越需要结合图像和动画呈现。

(2)用作类比。把抽象的概念视觉化,帮助理解和记忆。 (3)用于组织信息。用时间线、流程图、关系图、地图等,表示主题之间的关系、活动变化过程、事物的逻辑结构等。

(4)作为线索。用图像使学习者注意某些重要信息,然后进一步详细了解,这种用法常常与链接、翻页相结合。

(5)用作反馈信息。在练习、指导等类型的教学软件中,用图像或动画对学生的反应表示肯定或否定。 3.多媒体教学软件开发中的三要素

(1)标准。标准是一个好的项目的起点和基础,规定了制作人员持续努力要达到的质量水平。标准的建立来自两个方面:第一,由制作人员提出来的,制作人员都知道质量标准,并且全程遵守。第二,由用户提出的,往往较具体。

(2)评价。进行全程评价关系着项目的质量,只有通过设计与开发过程中反复的设想、试验、评价、修改,使每一步工作都符合质量,才能使产品具有高质量。

(3)管理。成功与否的项目的差别很大程度上在于管理。对整个教学软件制作项目的资源,经费,时间等都要从始至终严格控制,进行科学的管理,否则项目容易偏离预定计划和标准。 4.CAI的五种不同的学习策略 (1)继续:呈现新的教学信息 (2)复习:呈现同样的或类似的信息

(3)补习:提供与刚才内容有关的更详细的说明材料信息 (4)提示:提供启发信息,再呈现刚才呈现的问题,让学习者反应 (5)测验:提供小测验,检查是否达到学习目标,通常课后进行 5.图形和图像在多媒体教学软件中的优势与不足 A.图形

优势:概括力强、产生联想、象征意义

劣势:①相对于真实的事物,图形具有一定的设计色彩和归纳概括,在外观表现上和具体事物存在差异; ②过于复杂的图形会让人很难抓住要点; ③每个人对图片的理解是不一样的;

④同一个人在不同的情境下对图片也有不同的理解; B.图像

优势:①表现物品或者信息是接近真实的,具有很形象的说服力 ②在表现上具有引导人们联想的功能,具有很强的感染力 劣势:①图像采集的条件要求高

②过多的图像和视觉元素容易冲淡主题。

6.多媒体教学软件开发中设计和开发阶段的基本任务:

A.设计阶段:①分析教学内容(确定教学软件内容、任务和概念分析) ②确定教学软件结构(确定学习类型、选择教学软件类型、决定软件教学因素的使用、描述教学软件顺序) ③制作教学软件原型 ④创作流程图 ⑤创作故事板

⑥编写音频和视频素材脚本

B.开发阶段:①多媒体素材制作(准备文本元素、创作图像和动画、制作视频和音频)

②教学软件集成(教学软件集成工具的分析与选择、教学软件集成的过程、教学软件集成的管理) ③编写使用手册

④测试与评价(项目组测试、学习者试用、总结性评价)

三、八个专业术语

CMI:计算机管理教学(Computer Managed Instruction ) CBE: 计算机辅助教育(Computer Based Education) CAI:计算机辅助教学(Computer Aided Instruction ) CAL:计算机辅助学习(Computer Aisted Learning) CBLR :计算机化的学习资源(Computer-based Learning Resources) CBI:计算机辅助教学(Computer-based Instruction)

CSCL:计算机支持的协作学习(Computer Supported Cooperative Learning)

CSCW:计算机支持的协同工作(Computer Supported Cooperative Working)

四.一堆要记忆的知识点 1.五代媒体和媒体发展的五阶段。 五代媒体:

(1)报纸、杂志(2)广播(3)电视(4)互联网(5)手机终端 五阶段:语言,文字,印刷,电子,数字。 2.信息技术领域的媒体。

文本,图像,图形,动画,视频,声音 3.国际电联对媒体的五种分类

感觉媒体,表示媒体,表现媒体,存储媒体,传输媒体。 4.多媒体技术包括哪七类技术

音频技术,视频技术,数据压缩和解压缩技术,大容量光存储技术,超文本超媒体技术,媒体同步技术,多媒体网络技术 5.多媒体在艺术中的六种用途

网页设计,企业宣传,电子杂志,电子楼书,游戏界面,媒体工具,手机界面,教学软件。 6.3as说和3L说

3as说:Computer as tutor——导师 Computer as tutee——学员 Computer as tool——工具

3L说:Learning through computer——学习资源 Learning with computer——学习工具 Learning about computer——学习对象 7.视频与音频文件常见格式

视频:AVI、RM、WMV、MOV、SWF、FLV、MP

4、MPEG、DAT 音频:波形音频文件、MP3音频文、WMA音频文件、WAV音频文件、MIDI音频文件、REAL MEDIA音频文件等 8.CAI系统的组成:硬件、软件、课件 9.课件、软件与工具的区别

课件是针对具体的课程设计,内容特定的计算机软件。 学习工具是支持学习活动的软件,与内容无关。 学习资源是课程论题以外的内容,与内容相关。 10.多媒体著作系统的四种分类:

以图标对象为基础的多媒体著作系统(eg.Authorware) 以时间序列为基础的多媒体著作系统(eg.Flash) 以卡片或页面为基础的多媒体著作系统(eg.PowerPoint) 以传统程序设计语言为基础的多媒体著作系统(eg.VB、C++) 11.完整的MCAI课件的五部分:导入模块、控制模块、信息呈现、帮助模块、结束模块

12.多媒体作品中的声音类型:语音旁白、背景音乐、单音音响、动画短音

13.在多媒体作品中视频表现的劣势: ①文件信息量大 ②容易冲淡主题

推荐第2篇:多媒体教学软件设计与开发实验报告

实验一 多媒体教学软件的图文演示设计

一、实验目的: 对多媒体教学软件进行图文演示设计,综合运用图形图像、影音处理软件及Flash CS4对多媒体教学软件的学习内容进行演示的设计与制作。

二、实验器材:多媒体计算机

三、学时分配: 8

四、实验地点:A301

五、实验内容: 实验主题:配乐诗朗诵 步骤:

1、建立课件场景

启动flash界面,选择新建flash文档,设置文档大小为500*400,背景色为“青色”,帧频为24fps

2、制作卷轴素材

(1)选择主菜单“文件”/“导入”/“导入到库”,从外部文件中导入准备好的画轴和画卷的图片素材。

(2)从“库”中拖入画卷图片,用“任意变形”工具调整其大小,放置在画幅中,形成画卷条幅效果,如图1所示

图1

图2

3、创建向一侧展开的卷轴动画

(1)回到场景,修改图层1为“画卷”层。在“库”中把画卷元件拖入到场景中心,用任意变形工具调整其大小,并在第800帧插入帧。

(2)在“画卷”层左方新增一图层“左画轴”层。在“库”中把“画轴”元件拖入场景作为左画轴,放置在画卷左边缘,并在“任意变形”工具调整其大小适合画卷。 (3)在“左画轴”层上方新增一图层“右画轴”层。同(2)方法制作“右画轴”,放置在紧贴左画轴右边位置,如图2所示。

(4)在“左画轴”层上第800帧插入帧,在“右画轴”层上第50帧插入关键帧,按住Shift键用鼠标把右画轴移动到画卷右侧边缘并与画卷对齐。选择“画轴”层上1-50帧序列中的任意帧,右击鼠标,在弹出的快捷菜单中选择“创建传统补间”命令,为右画轴建立向右移动的补间动画,形成画轴展开,其效果如图3所示。

图3 图4 (5)在“画卷”层上方新增一图层“遮罩”层。在该层选用工具箱中“矩形”工具,在“属性”对话框上设置笔触颜色为“无色”,填充颜色为任意一种颜色。在场景中用鼠标拖出与画卷一样大小的矩形,覆盖画卷,作为画卷的遮罩。 (6)选择“遮罩”层第1帧,运用工具箱中的“任意变形”工具把矩形遮罩图形缩至左画轴下。选择该层第50帧,运用工具箱中的“任意变形”工具把矩形遮罩图形横向扩大到下画轴下,形成从左到右的遮罩扩大式变形。在此层1-50帧序列应用“创建补间形状”,使遮罩矩形建立变形动画。

(7)选择“遮罩”层,右击鼠标,在弹出的快捷键菜单中选择“遮罩层”命令,使矩形变成画卷的遮罩,实现遮罩层动画。由此打开画卷动画生成,画卷将同画轴移动而展开,其最终效果如图4所示。

4、添加按钮控制播放

在场景1时间轴上新建图层,命名为按钮,从主菜单“窗口-公共库”中选择合适的按钮,直接拖入场景,调整其大小,放在合适位置,如图5。

图5 图6

5、声音的加载 (1)在主菜单中选择“文件”/“导入”/“导入到库”命令,打开“导入到库”对话框,在此对话框浏览选择需要导入的声音素材,单击“打开”按钮即可将声音素材导入当前Flash文档的“库”中。

(2)在场景的时间轴上新建一图层并命名为“音乐层”,选择该层为当前层。在第50帧插入关键帧

(3)打开“库”对话框,选择需加载的声音文件,直接拖入舞台中,实现声音素材的场景加载。

6、文本的加载

(1)新建图层,并重命名“字幕”,根据音乐,在第51帧,输入文本“如梦令 李清照”,第110帧处插入关键帧,在第51帧和第110帧之间创建传统补间,第111帧插入空白关键帧,第168帧处插入帧。

(2)新建图层,命名为“遮罩2”,在“画卷”层上方新增一图层“遮罩2”层。在该层选用工具箱中“矩形”工具,在“属性”对话框上设置笔触颜色为“无色”,填充颜色为任意一种颜色。在场景中用鼠标拖出与画卷一样大小的矩形,覆盖画卷,作为画卷的遮罩。

(3)选择“遮罩2”层第51帧,运用工具箱中的“任意变形”工具把矩形遮罩图形缩至文本旁。选择该层第110帧, 运用工具箱中的“任意变形”工具把矩形遮罩图形横向扩大到完全遮住文本,形成从左到右的遮罩扩大式变形。 在此层51-110帧序列应用“创建补间形状”,使遮罩矩形建立变形动画。 (4)根据声音起始位置,采用同样方法完成后面所有文本内容的操作。

(5)选择“遮罩2”层,右击鼠标,在弹出的快捷键菜单中选择“遮罩层”命令,使矩形变成画卷的遮罩,实现遮罩层动画。由此打开画卷动画生成,画卷将同画轴移动而展开,其最终效果如图6所示。

7、测试影片并保存文件

(1)按Ctrl+Enter组合键测试影片动画 (2)执行“文件|保存”命令保存作品

实验小结

在这次实验中,我不仅熟悉了图文创建环境,还学习到如何进行图形绘制与编辑,文本的创建与编辑,以及声音素材的添加。在具体的实验操作过程中,我也更好地理解了Flash中显示图标的设置意义。陆游说“纸上得来终觉浅,绝知此事要躬行。”看似简单的操作,当我真正做起来的时候,才发现需要注意的细节很多,稍有不慎就会出现错误。所以,这次的实验使我获益匪浅。

实验二 多媒体教学软件的交互功能设计

一、实验目的:对多媒体教学软件进行交互功能设计,主要运用Flash CS4平台和AS编程对多媒体教学软件的交互功能进行设计与开发。

二、实验器材:多媒体计算机

三、学时分配: 8

四、实验地点:A301

五、实验内容: 实验主题:心理测试 步骤:

1、创建新文档

启动flash界面,选择新建flash文档,设置文档大小为1024*768,背景色为“白色”,帧频为24fps

2、制作软件背景画面

将所找的位图素材导入到库,并拖放到“背景”图层,调整好大小,效果如图1

图1 图2

3、制作题目静态内容画面。

1)新建两个图层,并命名为“题目”和“脚本”。

2)单击“背景”图层,将该图层锁定,避免在以后的操作中移动该图层的内容。 3)在“题目”图层的第1帧,单击“文本”工具按钮,编辑文本,效果如图2。

4、制作选择题选项按钮。1) 选择“窗口|组件”命令,打开“组件”窗口,双击User Interface组件类,找出RadioButton,如图3所示,并分别拖放3个RadioButton按钮到舞台,分别对应A、B、C文字位置,并将其对齐,最终效果如图4

图3 图4 2) 选择其中一个RadioButton组件,选择右边面板的“属性”选项卡,激活“组件检查器”面板,选择“参数”选项卡,将文本“A„„”对应的RadioButton组件的groupName属性设置为answer,删除label参数的值,同样对B、C选项做相同操作

5、制作选择后的反馈显示

单击“文本”图层,选择工具栏中的文本工具,设置属性为“动态文本”,将该文本的实例名称命名为“answer”,并对该文本框的字体设置相应的格式,效果如图5

图5 图6

6、利用ActionScript脚本语言设置问题选项点击动作行为

1)选择“脚本”图层的第一帧,并选择“窗口|动作”命令 2)在“动作-帧”面板中输入脚本代码,实现点击动作,如图6

7、添加背景音乐

将素材导入到库,直接拖入场景,在音乐结束位置,插入帧,其他图层也相应插入帧,如图7

图7 图8

8、测试影片并保存文件

(1)按Ctrl+Enter组合键测试影片动画,效果如图8 (2)执行“文件|保存”命令保存作品

实验小结

这次实验是一次非常有趣的实验,我们通过搜索心理测试题,来做一个有交互性功能的Flash。该实验除了要求我们对图文创建和音乐背景添加的有一个更深入的学习,更重要的是对ActionScript脚本语言的学习。没有脚本语言的flash不能算一个真正的flash,而脚本语言的学习又有一定复杂性,所以我们应该花更多时间来学习脚本语言,真正学好Flash。

当前,很多产品都讲究交互设计这一功能,这种交互性给用户带来更多快捷和方便,非常符合用户的体验需求,尤其在教学课件的制作上,这种交互性的Flash课件,明显比PPT有优势。Flash是交互式多媒体集成,既可以编制一个动画,也可以集合文本、图形、图像、音效、音乐等多种媒体,加上强大的交互式控制(包括按钮的多种动态变换、任意播放控制与跳转设置等等),完全可以用来独立编制多媒体课件,尤其是适合于编制积木式的小课件(演示、自学均可)。它对于学生的自主学习和思考,有很大的帮助。所以,对于Flash的脚本语言,我们更应该努力掌握好。

推荐第3篇:多媒体教学软件设计与开发(教学大纲)

《多媒体教学软件设计与开发》教学大纲

一、课程基本信息

课程编号:EIT47402C 中文名称:多媒体教学软件设计与开发

英文名称:The design and development of multimedia constructional software 课程类别:专业必修课 适用专业:教育技术学 开课学期:第五学期 总 学 时:68学时 总 学 分:3 预修课程(编号):《计算机基础》、《多媒体画面艺术基础》和《多媒体技术及应用》 并修课程(编号):无

课程简介:本课程以Authorware为创作平台,介绍多媒体软件的开发与制作技术,涉及到图形与文本的处理、动画制作、多种交互方式的使用、视频播放、配置音乐与解说词的方法、菜单制作、外部程序的链接、计算图标编程、程序的调试与打包、安装程序和自动演示程序的制作以及程序生成向导等内容。通过本课程的学习,可以掌握多媒体软件开发与制作的基本方法,能自行设计和制作多媒体软件。教学采用学练结合的方法,边学习边实践,提高教学效果。

二、课程性质、目的和要求

课程性质:多媒体教学软件设计与开发是教育技术系本科学生的一门必修课程。要使学生能够掌握教学软件的基本编程方法,培养学生的编程能力和以计算机科学的方法认知世界和解决问题的能力。

课程目标:以教学设计为理论基础,以多媒体开发工具为创作平台,介绍多媒体教学软件的设计与开发的基本理论和技术。通过本课程的学习与专题项目实践,使学生能根据教学情景的需要,自行设计和开发多媒体教学软件,成为多媒体教学软件设计与开发的高级人才。

课程要求: (1)掌握多媒体课件的设计制作方法;掌握所有图标的用途、用法及主要属性;掌握程序设计的基本方法、基本规律,掌握常用系统函数和系统变量;掌握主要类型课件的制作规律。

(2)学习在Authorware中使用外部媒体、外部插件、外部函数、调用外部程序的方法。 (3)学习使用计算机解决问题的方法,培养使用计算机解决问题的能力,培养科学素质和自学能力。

三、教学内容、要点和课时安排

第一章 多媒体教学软件概述 2学时

第一节 多媒体教学软件的类型

第二节 多媒体教学软件的基本构成

第三节 多媒体教学软件设计与开发模式 第二章 多媒体教学软件设计与开发过程 2学时

第一节 多媒体教学软件的计划

第二节 多媒体教学软件的设计

第三节 多媒体教学软件的开发 第三章 多媒体教学软件开发平台 4学时 第一节 多媒体教学软件开发平台概述

第二节 Authorware—典型的集成开发平台

第三节 图标编程方式

第四节 脚本编程方式

第四章 多媒体教学软件的图文演示设计 4学时

第一节 图文创建环境

第二节 图形、图像的处理

第三节 文本的处理

第四节 相关的设置

第五节 文本的演示设计

第六节 图片的演示

第五章 多媒体教学软件的交互功能设计 8学时

第一节 交互功能

第二节 按钮交互功能

第三节 热区交互功能

第四节 热对象交互功能

第五节 目标区域交互功能

第六节 下拉菜单交互功能

第七节 条件交互功能

第八节 文本输入交互功能

第九节 按键交互功能

第十节 次数限制交互和时间限制交互的功能

第十一节 事件交互功能

第十二节 永久性交互功能

第六章 多媒体教学软件的声像控制设计 6学时

第一节 数字电影图标的设置 第二节 数字影像媒体控制设计

第三节 其它格式动画和影像媒体的控制

第四节 数字声音图标的设置

第五节 数字声音媒体控制设计

第七章 多媒体教学软件中的移动设计 6学时

第一节 教学软件对移动控制的要求

第二节 移动类型和属性

第三节 匀速运动

第四节 变速直线运动

第五节 移动多个对象

第六节 变速曲线运动

第七节 复合运动

第八节 拖动对象

第九节 在拖动时绘图

第十节 在拖动过程中移动对象

第十一节 运动的暂停与继续

第十二节 移动数字电影

第八章 多媒体教学软件程序基本结构设计 4学时

第一节 程序结构设计概述

第二节 程序分支结构设计

第三节 程序基本结构设计案例

第九章 多媒体教学软件中的习题设计 6学时

第一节习题设计的基本类型与方法

第二节 选择题的设计

第三节 判断题的设计

第四节 填空题的设计

第五节 学生成绩的统计设计

第十章 多媒体教学软件交互界面与交互形式设计 4学时 第一节 人机交互界面概述

第二节 教学软件界面结构设计

第三节 教学软件交互设计技巧与实现

第十一章 多媒体教学软件中教学演示图形设计 6学时

第一节 演示图形中的参照系分析

第二节 函数的演示图形设计

第三节 几何对象演示图形设计

第四节 教学统计演示图形设计

第五节 动态教学演示图形设计

第 十二章 多媒体教学软件中库、模块与知识对象的应用 4学时

第一节 使用媒体库

第二节 模块的使用

第三节 知识对象

第十三章 多媒体教学软件中脚本编程技巧 4学时

第一节 用系统变量、函数和脚本语句的编程技巧

第二节 脚本函数 第三节 javascript脚本语言应用

第十四章 在多媒体教学软件中使用外部函数与插件 4学时

第一节 外部函数与插件

第二节 U32函数

第三节 DLL函数

第四节 使用Xtras 第五节 使用ActiveX控件

第六节 OLE应用

第七节 调用外部程序

第十五章 多媒体教学软件的调试与发布 2学时

第一节 多媒体教学软件的调试

第二节 多媒体教学软件的打包与发布 第十六章 多媒体教学软件的网络应用 2学时

第一节 Authorware支持的网络应用技术

第二节 Authorware作品的网上发布

第三节 使用Authorware Web Player 7 第四节 网络变量及函数的应用

四、教学方法

本课程在机房上课,讲练结合。使用电子教案和多媒体教学设备,为学生提供所有实例的源程序。上机部分是本课程的重要组成部分,必须保证角需教学进度和教学要求。

五、成绩考核方法

作业:作业中的编程题是教学内容的重要补充,是培养学生使用计算机解决问题能力的重要环节。必须保证学生课下有上机的条件和足够的上机时间。

考核方法:上机考试加闭卷考试

六、教材与主要参考书目 教材:

《多媒体教学软件设计与开发》,王志军编著,高等教育出版社,2006年。 主要参考书目:

1.《多媒体教学课件开发技术丛书》(数学、物理、化学、生物、地理分册)毕广吉主编,北京理工大学出版社,2003年1月。

2.《Authorware多媒体课件制作技术》,毕广吉编著,北京理工大学出版社,2001年6月。

推荐第4篇:《多媒体教学软件设计与开发》实验教案

教育科学系教育技术学专业

《多媒体教学软件的设计与开发》实验讲义

《多媒体教学软件的设计与开发》实验讲义

实验一

多媒体教学软件的图文演示设计

一、实验目的

1.了解相关图标的功能与使用方法 2.掌握文本对象的处理方法 3.掌握图形的绘制方法

4.掌握外部图片的使用方法

5.掌握图文演示型教学软件的制作方法

二、实验设备

Authorware7.0 软件、微机

三、实验指导 范例:

绘制椭圆:

(1)绘制

① 击绘图工具箱中的椭圆工具。

② 将鼠标指针移动到演示窗口中要绘制椭圆(或圆)的左上角位置,此时鼠标会变成“十”字型。

③ 按下鼠标左键,然后向右下角方向拖动鼠标(如要绘制圆,则在拖动时按住Shift键),可以看到一个变化的椭圆,松开左键,椭圆绘制完毕。

④ 按空格键,或选中工具箱中选择与移动工具并点击演示窗口的空白处,去除椭圆的激活状态。

四、实验内容

1、要求学生能够熟悉图文创建环境,能够熟练的进行图形绘制与编辑

2、要求学生知道如何进行文本的创建与编辑

3、在具体操作过程中进一步理解显示图标的属性设置。

五、实验报告要求

实验结束后,应整理实验报告,其内容应包括:

1、实验题目

2、设计思路

3、具体操作步骤

教育科学系教育技术学专业

《多媒体教学软件的设计与开发》实验讲义

4、对实验结果进行分析、总结

(说明:实验总结的内容可以以表格的形式完成)

实验二 多媒体教学软件的交互功能设计

(一)----按钮交互

一、实验目的

会设置并使用按钮,学会设置按钮快捷键,掌握按钮的激活条件及属性设置。

二、实验设备

Authorware7.0 软件、微机

三、实验指导

范例:按钮交互的属性设置

1.打开 Properties: Response(响应属性)面板窗口有两种方法。

(1)使用鼠标双击响应类型标志,或在打开其他图标属性设置面板时,用鼠标单击目标响应类型标志即可。

(2)选中响应图标后选择菜单Modify(修改)/Icon(图标)/Response(响应)菜单命令(快捷键为Ctrl+E)即可。

其他交互的属性面板窗口打开方式与按钮交互相同。

(3)分支响应图标显示框,用于显示当前分支响应图标标志。

(4)Open(打开)按钮。单击此命令按钮,会打开当前交互分支中的响应图标,保存当前的交互属性设置,并关闭响应属性设置面板窗口。

(5)响应图标名称文本框,用于显示、修改或重新命名响应图标的名称。默认名称为“Untitled”(未命名)。当标签文本框为空时,该文本框的内容就是按钮上的文字。

(6)Type(类型)下拉菜单,用于设置或改变当前交互类型。

(7)Properties: Response(响应属性)面板共有两个选项卡,左面是每种交互特有属性设置,以交互的名称命名,右面是各类交互通用的Response(响应)选项卡。

四、实验内容

1、要求学生了解按钮交互的特点

2、理解按钮交互的属性设置,并能灵活运用

3、利用按钮交互,设计一个媒体播放器的界面,实现播放、暂停、继续、停止、快进、快退等功能的按钮设计。本例主要讨论按钮设计的相关问题。本例的知识要点主要涉及按钮交互功能设计,自定义按钮的设计与实现。

五、实验报告要求

教育科学系教育技术学专业

《多媒体教学软件的设计与开发》实验讲义

实验结束后,应整理实验报告,其内容应包括:

1、实验题目

2、设计思路

3、具体操作步骤

4、对实验结果进行分析、总结

实验三 多媒体教学软件的交互功能设计

(二)---热区交互

一、实验目的

会设置并使用热区交互,学会设置热区交互快捷键,掌握热区交互的激活条 件及属性设置。

二、实验设备

Authorware7.0 软件、微机

三、实验指导

范例:热区交互的属性设置

热区交互的Properties: Response(响应属性)设置面板窗口由Hot Spot(热区)选项卡和Response(响应)选项卡组成。

(1)Size(热区大小)文本框、Location(热区位置)文本框功能与设置方法与按钮交互相同。

(2)Key(s)(快捷键)文本框,与按钮交互相同。

(3)Match(交互匹配)下拉菜单,用于设置触发热区交互的鼠标操作有3种方式。

① Single-click(鼠标左键单击)选项。

② Double-click(鼠标左键双击)选项。

③ Cursor in Area(光标在区域范围内)选项。

(4)Highlight on Match(匹配时高亮色显示)。

(5)Mark on Match(匹配时显示标志)。

(6)Cursor(鼠标光标)设置,与按钮交互相同。

四、实验内容

1、了解热区交互的属性设置,并能灵活进行具体操作设置。

2、利用热对象交互,设计一个介绍各大洲的教学软件,实现用鼠标拂过每个大洲的陆地区域时,显示该大洲的名称范围与文字简介。本例知识要点主要涉及热对象交互功能设计,制作不规则图形透明热对象交互的技巧。

教育科学系教育技术学专业

《多媒体教学软件的设计与开发》实验讲义

五、实验报告要求

实验结束后,应整理实验报告,其内容应包括:

1、实验题目

2、设计思路

3、具体操作步骤

4、对实验结果进行分析、总结

实验四 多媒体教学软件的交互功能设计

(三)--热对象交互

一、实验目的

会设置并使用热对象交互,学会设置热对象交互快捷键,掌握热对象交互 的激活条件及属性设置。

二、实验设备

Authorware7.0 软件、微机

三、实验指导

范例:热对象交互的属性设置

打开热对象交互的属性设置面版。在交互图标预览框中可以看到该触发该交互所对应的图标内容。

1.Hot Object(热对象)选项卡:

(1)Hot Object(热对象)文本框:显示热对象的名称。

(2)Key(s)(快捷键)文本框:用于设置热对象响应的等待快捷键。

(3)Match(交互匹配)下拉菜单:与热区交互相同,共有Single-Click(用鼠标左键单击)、Double-Click(用鼠标左键双击)和Cursor on Object(用鼠标光标拂过热对象)三种选择。

(4)Highlight on Match(匹配时高亮显示)和Cursor(鼠标光标)选项设置与热区交互设置相同。

2.Response选项卡的内容与热区交互设置相同。

四、实验内容

1、熟悉热对象交互的属性设置,并能灵活运用

2、利用热对象交互,设计一个介绍各大洲的教学软件,实现用鼠标拂过每个大洲的陆地区域时,显示该大洲的名称范围与文字简介。本例知识要点主要涉及热对象交互功能设计,制作不规则图形透明热对象交互的技巧。

五、实验报告要求

教育科学系教育技术学专业

《多媒体教学软件的设计与开发》实验讲义

实验结束后,应整理实验报告,其内容应包括:

1、实验题目

2、设计思路

3、具体操作步骤

4、对实验结果进行分析、总结

实验五 多媒体教学软件的声响控制设计

一、实验目的

1.了解多媒体教学软件声像媒体的类型 2.熟悉电影图标的功能与属性 3.熟悉声音图标的功能与属性 4.掌握声像媒体控制的设计方法

二、实验设备

Authorware7.0 软件、微机

三、实验指导

范例:数字影像文件的导入 1.直接导入的方法

(1)直接拖入

找到所需要的数字电影文件,用鼠标将其直接拖放到程序流程线上,Authorware 7.0将自动为所导入的声音文件创建一个载有该数字电影文件内容的新电影图标,其名称就是源文件名称。

(2)直接覆盖

直接将外部影像文件拖放到已经创建的数字电影图标上,该文件将会取代原图标中的影像文件,形成新的电影文件,但电影图标的名称还保持原样。 2.导入的方法

(1) 直接使用菜单命令

点中流程线上某处,出现小手标记,然后选择菜单命令File/Import and Export/ Import Media,弹出Import Which ? File 对话框。

选择Show Preview复选框,也可同时选择右下角的“+”按钮,出现Files To Import列表框。选中其中影像文件。

点击Import按钮即可导入影像文件,也可在选中文件名后点击Files To Import列表框中的Add按钮,使该文件进入列表框,多次重复加入多个文件后,点击Import按钮,即可批量导入文件。 (2)先创建图标,后导入文件

教育科学系教育技术学专业

《多媒体教学软件的设计与开发》实验讲义

首先拖动一个电影图标到流程线上,创建一个图标,命名图标名,然后点击该图标的属性对话框中的Import按钮,后面的操作与上面所述相同。 (3)利用已有图标导入文件

选中一个流程线上的某个电影图标,点击属性对话框中的Import按钮,后面的操作与上面所述相同。

四、实验内容

1、熟悉数字电影图标的设置以及电影图标的属性设置。知道如何惊醒数字影像文件的导入。

2、了解数字影像媒体的控制设计,以及其他格式动画和影像媒体的控制。

3、(1)、数据电影文件的播放。在流程图上建立数字电影图标,分别导入AVI文件和MPG/MPEG文件,观察播放效果。

(2)、数字电影图标属性的设置。打开数字电影图标,分别设置其同性、起始帧、结束帧和播放速率,观察播放效果的变化。数字电影的播放长度是以帧数为单位的,具只能作为外部文件导入,在“数学电影属性”对话框中能够看到长度和属性。

(3)电影播放控制器的设计

a)向流程线上拖入知识对象Movie Controller(电影控制器) b)根据操作向导完成参数设置,并导入数字电影Authorware安装目录下的ShowMe文件夹下的davilex.avi文件。

4、在Authorware7.0程序中控制GIF动画的方法,包括暂停、继续和播放速度调节等。

运行程序时先选择一个动画GIF文件,动画立即播放,播放中可以调节播放的速度,也可以暂停和继续。控制GIF动画靠的是调用GIF动画的方法,使用CallSprite系统函数。除SetIconProperty系统函数、SetSpriteProperty系统函数外,本例还使用了其他几个函数。函数属性和方法使用详见光盘函数表。

五、实验报告要求

实验结束后,应整理实验报告,其内容应包括:

1、实验题目

2、设计思路

3、具体操作步骤

5、对实验结果进行分析、总结

实验六 多媒体教学软件中的移动设计

教育科学系教育技术学专业

《多媒体教学软件的设计与开发》实验讲义

一、实验目的

1.掌握多媒体教学软件中移动的类型

2.掌握5种移动类型的用法和属性设置 3.掌握在课件中实现变速运动的方法 4.掌握拖动在课件中的用处和使用方法

二、实验设备

Authorware7.0 软件、微机

三、实验指导

范例:匀速运动的实现

匀速运动是最简单的运动,包括匀速直线运动和匀速曲线运动。移动图标的5种移动方式都是匀速运动。但是由于使用的场合不同,匀速运动也会有一些复杂的情况需要处理。

实现匀速运动的基本步骤是:

1.打开移动图标属性对话框,选定一种移动方式,指定移动对象。

2.设置移动速度和执行方式。如果要同时移动多个对象,只有最后一个移动图标的执行方式属性设置成Wait Until Done,其他图标的执行方式属性均设置成Concurrent。

3.如果是沿路径的移动,设置路径。

四、实验内容

1、要求学生了解移动类型和属性,理解匀速运动和变速直线运动(反弹运动,简谐震动)

2、能熟练操作移动多个对象的方法(气体分子的运动为例)

3、理解变速曲线运动(斜上抛运动为例)

4、实例:水压机左侧的大活塞缸中有一个大活塞,右侧的小活塞缸中有一个小活塞,当用鼠标拖动大活塞时小活塞做相应的移动,当用鼠标拖动小活塞时大活塞也做相应的移动,移动的行程符合机械运动的规律。要做到拖动大活塞时小活塞移动、拖动小活塞时大活塞移动并保持一定的数量关系,必须随时检测系统变量DisplayX和DisplayY的值,然后依据这些数值计算出移动目的地的坐标,并把计算这些坐标的表达式填写在移动图标的相应属性中。

五、实验报告要求

实验结束后,应整理实验报告,其内容应包括:

1、实验题目

2、设计思路

教育科学系教育技术学专业

《多媒体教学软件的设计与开发》实验讲义

3、具体操作步骤

4、对实验结果进行分析、总结

实验七 多媒体教学也软件程序的基本结构设计

一、实验目的

1.掌握形成循环结构程序的方法 2.掌握形成判断结构程序的方法 3.掌握形成分页结构程序的方法

二、实验设备

Authorware7.0 软件、微机

三、实验指导

范例:超文本形式的内容查询设计 文本的超级链接步骤如下: 1.定义文本风格

2.建立有链接功能的文本风格

(1) 设置触发超级链接的交互属性 (2)建立文本风格的超级链接 3.应用有链接功能的文本风格

在程序运行中,只要单击、双击或鼠标掠过这个文本块(取决于触发超级链接交互属性的设置),程序就会立即跳转到链接目标,实现了一种超级链接形式的交互。

四、实验内容

1、要求学生熟悉程序结构的类型和层次

2、能进行程序分支结构设计(判断分支结构、循环分支结构、框架分支结构、时需分支结构)

3、实例:自动翻页的技巧 (1).定时自动翻页

本例给框架图标下挂20个显示图标,通过改造框架图标的内部结构形成定时自动翻页的效果,就像连续播放幻灯片一样。本例的要点是如何最方便地为框架图标下挂多个显示图标。正确的做法是:调整桌面上窗口的布局,让Windows的资源管理器窗口和Authorware窗口各占据演示窗口的一半,并使欲下挂显示图标的框架图标能看得见。在资源管理器中同时选定20(或更多)个图片文件,然后教育科学系教育技术学专业

《多媒体教学软件的设计与开发》实验讲义

用鼠标拖动到Authorware框架图标的右侧,放开鼠标稍等片刻,就生成20个显示图标,并在每一个显示图标中分别导入了一个图片文件,而且这些图片在演示窗口中是自动与左上角对齐的。

(2).完成任务后自动翻页

定时自动翻页有一个缺点,如果程序在每页中运行的时间彼此不同,就无法用统一的延时时间去配合。本例则是等待每页中程序运行完毕之后才翻到下一页,是对上一实例的改进。本例的要点是取消上一实例的定时条件响应,而是在每页分支的最后安置一个NextPage导航图标,这样只有导航图标之前的程序全部运行完,才发生Next Page导航,从而达到预想的目的。

五、实验报告要求

实验结束后,应整理实验报告,其内容应包括:

1、实验题目

2、设计思路

3、具体操作步骤

4、对实验结果进行分析、总结

实验八 多媒体教学软件中的习题设计

一、实验目的

1.了解多媒体教学软件中习题的基本类型 2.了解多媒体教学软件中习题的设计方法 3.掌握多种类型习题的编程方法

二、实验设备

Authorware7.0 软件、微机

三、实验指导 范例:多选题设计

与单选题相仿,可以点击题目中的选项来选择答案,并且将选中的选项变换颜色,而当再一次选择此选项时又可取消选择。点击“提交”按钮后,程序将告诉用户答案是否正确。点击“答案”按钮,程序提供正确答案。例子中使用了热区交互,并使用了一种由循环图标构成的一个“附加库”,以减少重复内容图标的使用。通过本例主要是熟悉交互响应的使用方法,热区响应属性的设置,条件分支语句的使用,以及显示函数和循环图标的使用。

四、实验内容

教育科学系教育技术学专业

《多媒体教学软件的设计与开发》实验讲义

1、要求学生熟悉习题设计的基本类型与方法

2、学生能根据自己的需求自主进行选择题的设计(单选题、多选题、连线选择题)

3、学生能熟练的进行判断题的设计

4、学生完成填空题的设计(完型填空、拖动式填空)

五、实验报告要求

实验结束后,应整理实验报告,其内容应包括:

1、实验题目

2、设计思路

3、具体操作步骤

4、对实验结果进行分析、总结

实验九 程序中变量函数的使用方法

一、实验目的

掌握程序中变量函数的使用方法。

二、实验设备

Authorware7.0 软件、微机

三、实验指导 范例: 限时答题

要求:随机出题,限时5秒钟答一道题,超时出下题

1.计算图标:随机出题,a:=Random(0,9,1),b:=Random(0,9,1) 2.交互图标:答题,输入提示“5秒钟答一道题” 3.时间响应:5秒,GoTo(IconID@\"随机出题\"), 4.文本响应:*,

5.计算图标:x=numentry 6.交互图标:批改

7.条件响应:(a+b)=x,显示“正确”,停1秒,n=n+1,GoTo(IconID@\"随机出题\") 8.条件响应:(a+b)x,显示“错”,并显示正确答案{a+b},停1秒,GoTo(IconID@\"随机出题\") 9.按钮响应:显示图标答对的题目数n,计算图标quit(0)

四、实验内容

教育科学系教育技术学专业

《多媒体教学软件的设计与开发》实验讲义

学生熟悉了解程序中常用的变量函数。 学生利用变量函数解决实际操作问题。

五、实验报告要求

实验结束后,应整理实验报告,其内容应包括:

1、实验题目

2、设计思路

3、具体操作步骤

4、对实验结果进行分析、总结

实验十 多媒体教学软件中教学演示图形设计

一、实验目的

1.了解多媒体教学软件中程序绘图问题的特点 2.了解数学坐标系与窗口坐标系之间的区别 3.熟悉数学坐标系与窗口坐标系之间的转换

4.掌握多媒体教学软件中各种绘图程序的设计方法

二、实验设备

Authorware7.0 软件、微机

三、实验指导

范例:直角坐标系的转换

(1)设窗口坐标系坐标变量为x、y,窗口分辨率为(m×n)。将窗口坐标系平移到窗口中心,创建一个新坐标系Ⅱ,其坐标变量为x

1、y1,那么x1=x-m/

2、y1=y-n/2,公式中的n/2和m/2是求得窗口坐标轴长度的一半。这个坐标系还不是直角坐标系,其坐标系统的纵坐标是向下递增的。

(2)将坐标系Ⅱ以坐标轴xd为基准进行上下翻转,使坐标系统的纵坐标向上递增,形成新坐标系Ⅲ,其坐标变量为x

2、y2,那么x2=x-m/

2、y2=-(y-n/2),这个坐标系就是坐标原点在窗口中央的直角坐标系。

设该直角坐标系函数公式为:y2=f(x2),

则窗口坐标系下函数公式变换为:y=-f(x-m/2)+n/2。

(3)缩放

设k为描述坐标系缩放程度的参量,设xd、yd为坐标系Ⅳ的坐标变量,那么 xd=k x2, yd=k y2,或 xd=k(x-m/2),yd=-k(y-n/2)

这个坐标系就是缩放后的坐标原点在窗口中央的直角坐标系。改变k值就可教育科学系教育技术学专业

《多媒体教学软件的设计与开发》实验讲义

以改变坐标系坐标变量值的缩放程度。

如果设直角坐标系的原点在任意地点x0、y0 ,那么 xd=k(x-x0) yd=-k(y-y0)

如果在直角坐标系中函数公式为: yd=f(xd) „„(DG) 则在窗口坐标系下函数公式为: y=-(1/k)f(k(x-x0))+y0 „„ (PG) 编程者应根据公式(PG)来编制程序,绘制出实际函数图像,但观察者感受到的是直角坐标系函数公式(DG)的图像。

四、实验内容

1、要求学生进行演示图形中的参照系分析

2、学生进行函数的演示图形设计(基本函数曲线的绘制)

3、学生进行几何对象演示图形设计(平面图形程序绘制、立体图形程序绘制、旋转图形程序绘制)

五、实验报告要求

实验结束后,应整理实验报告,其内容应包括:

1、实验题目

2、设计思路

3、具体操作步骤

4、对实验结果进行分析、总结

4、写出程序运行结果

5、对实验结果进行分析、总结

推荐第5篇:多媒体软件设计与制作复习提纲

《多媒体软件设计与制作》复习提纲

1.掌握actionscript语言的系统自带的常用属性(_x, _y, _xscale, _yscale, _xmouse, _ymouse, _rotation, _visible, _alpha)

_x和_y属性:它们代表影片剪辑在场景中的水平坐标和垂直坐标。 _xmouse和_ymouse属性:通过设置该属性可获取鼠标光标在屏幕中的坐标位置。 xscale和_width属性:它们决定影片剪辑在水平方向上的显示宽度。 yscale和_height属性:它们决定影片剪辑在垂直方向上的显示高度。 _rotation属性:设置该属性可以旋转影片剪辑。 _alpha属性:它代表影片剪辑的透明度。

_visible属性:该属性决定影片剪辑是否可见。

2.掌握ActionScript语言系统自带的常用函数(goto, play(), stop(), on(), with(), startDrag(), stopDrag(), duplicateMovieclip(), lineStyle(), moveTo(), lineTo(), function(), onClipEvent(), setProperty(), getProperty(), updateAfterEvent(),getByteLoaded(),getByteTotal() , Math.floor()) 【on是用来设定场景上按钮的鼠标/键盘事件的处理程序,该命令只能用在场景上的button instance。on语句的用法如下: on(mouseEvent){statement;}】

【允许您使用 object 参数指定一个对象(例如影片剪辑),并使用 statement(s) 参数计算该对象内的表达式和动作。】

【StarDrag”命令,允许用户拖动指定的影片剪辑。该影片剪辑将一直保持可拖动,直到通过对 MovieClip.stopDrag() 的调用明确停止为止,或者直到另一个影片剪辑变为可拖动为止。在同一时间只有一个影片剪辑是可拖动的。】

【lineStyle():指定 Flash 用于后续 lineTo() 和 curveTo() 方法调用的线条样式,在以不同参数调用 lineStyle() 方法之前,线条样式不会改变。可以在绘制路径的中间调用lineStyle() 以为路径中的不同线段指定不同的样式。】

【moveTo():将当前绘画位置移动到 (x, y)。 如果缺少任何一个参数,则此方法将失败,并且当前绘画位置不改变。】

【lineTo():

【stopDrag():停止当前的拖动操作。】

【duplicateMovieClip(元件名称,新元件名称,深度)】

【设置属性值setProperty可随时修改舞台中影片剪辑的属性,如透明度、坐标值、高度和宽度等。其表达方式如下: setProperty(target, property, expreion); 其中的target表示影片剪辑对象的目标路径,property表示对象的属性,expreion表示对象属性的值。setProterty(ABC,_y,150); 表示把名称为ABC的影片剪辑的Y坐标值设置成150】

【获取属性值getProperty是指取得影片剪辑的指定属性值并返回,其表达方式如下:

getProperty(instancename, property);】

3.掌握ActionScript语言系统常用的语句(if语句,for语句,) 4.懂得flash动画中元件和实例的含义区别

元件是指在flash创作环境中创建过一次的图形、按钮或者影片剪辑,可在整个文档或其他文档中重复使用。元件是flash舞台中的“演员”,可表演不同的角色。

元件从“库”中进入“舞台”就被称为该元件的实例。实例就是指位于舞台上或嵌套在另一个元件内的元件副本。实例可以与它的元件在颜色、大小、功能上有差别。编辑元件会更新它的所有实例,但对元件的一个实例应用效果则只会更新该实例。

5.懂得flash帧的类型和在动画中的主要含义 关键帧、空白关键帧和中间过渡帧。

1.关键帧的定义与操作

(1)定义:关键帧定义了一个过程的起始和终结,又可以是另外一个过程的开始,当帧内容发生变化时应当插入关键帧。关键帧具有延续功能,只要定义好了开始关键帧并加入了对象,那么在定义结束关键帧时就不需再添加该对象了,因为起始关键帧中的对象也延续到结束关键帧了。

(2)插入关键帧:将鼠标移到时间轴上表示帧的部分,并用左键单击要定义为关键帧的方格,后单击鼠标右键,在弹出菜单中选“插入关键帧”。

(3)复制关键帧:选中要进行复制的某个帧或某几个帧,选择“编辑/复制”菜单,然后在拷贝放置的位置选择“编辑/粘贴”菜单。

(4)清除帧关键帧:选中欲清除的关键帧,击鼠标右键并在弹出菜单中选择“删除帧”。

2.过渡帧

两个关键帧之间的部分就是过渡帧,它们是起始关键帧动作向结束关键帧动作变化的过渡部分。在进行动画制作过程中,我们不必理会过渡帧的问题,只要定义好关键帧以及相应的动作就行了。过渡帧用灰色表示。

3.空白关键帧

在一个关键帧里,什么对象也没有,这种关键帧,我们就称其为空白关键帧。

6.掌握flash动画层的类型?不同类型的层产生怎样的动画效果?

在flash中图层有普通层、遮罩/被遮罩层、引导层/被引导层这5类(各层之间可以方便地进行转换),其中遮罩/被遮罩层是成对出现的。

引导层:在 Flash 的图层面板中,有个添加引导层图标,点击它可添加新的引导图层。引导图层就是用来设置运动路径的图层,它所起的作用在于确定指定对象的运动路线。

遮罩层:层是透明的,上面的层的空白处可以透露出下面层的内容,Flash的遮罩层跟这个原理正好相反,遮罩层的内容完全覆盖在被遮罩的层上面,只有遮罩层内有内容的地区可以显示下层图像信息。就象探照灯似的,黑色的背景上,只有一个探照灯,灯光打到什么地方就显示出该处的内容。

7.懂得Flash动画场景的含义和作用

一个Flash作品可以由若干个场景组成,每个场景都分别拥有各自独立的动画内容。每个场景中的层和帧均相对独立。在播放时,Flash会自动按场景的顺序进行播放。

一个或几个场景就可以组成一个影片。

8.多媒体课件在教学中具有何作用

地位:多媒体课件是连接教学双方的桥梁和纽带,是实现CAI过程的中介或载体。

作用:1.提供多元化信息展示2.有利于培养学生多维化思维方式3.提供灵活、多样的学习步骤4.为教学提供大容量和集成化的信息资源

9.多媒体课件包含哪几种类型

资料、工具型

课堂演示型

个别化系统交互学习型 操练复习型

教学游戏型

10.多媒体学软件开发的步骤有哪些?

项目定义、教学设计、系统设计、稿本编写、数据准备、软件编辑、试用评价、形成产品

11.教学软件中必须包含形成性练习的设计,形成性练习的设计应包括哪几方面的设计内容?

形成性练习可设计为游戏方式和问题提问方式。

问题提问形式形成性练习设计应包括:

1.提问方式的设计

2.应答方式的设计

3.反馈方式的设计

12.多媒体教学软件中,有好交互界面的设计包含哪几方面的设计 文本交互的设计 热区交互的设计

移动对象交互的设计 按钮交互的设计

点击对象交互的设计 热键的设计 菜单交互的设计 限时限次交互的设计

13.多媒体课件的选题原则是什么

较为抽象的教学重点和难点教学内容;主题单一的教学内容 ;

能充分发挥计算机多媒体技术优势的教学内容 ;需以学生为教学活动主体的教学内容

14.如何对一个多媒体课件进行教学设计?

确定并分解教学目标;分析学生特征;教学内容设计

15.多媒体课件必须符合哪些基本要求

正确表达学科知识内容;反映教学过程和教学策略;具有友好的人机交互界面;具有诊断评价、反馈强化的功能

16.如何对多媒体课件的屏幕进行设计

显示方式的设计、颜色搭配的设计、字体形象的设计

17.分析教学目标、教学内容对设计多媒体课件有何意义 教学内容是学与教相互作用过程中有意传递的主要信息,一般包括课程标准、教材和课程等等。当下正值新课程改革,基于生成性教学思维理念,人们对于教学内容有了新的认识。“教学内容,系指教学过程中同师生发生交互作用、服务于教学目的达成的动态生成的素材及信息。教学目标是指教学活动实施的方向和预期达成的结果,是一切教学活动的出发点和最终归宿,它既与教育目的、培养目标相联系,又不同于教育目的和培养目标。 18.如何绘制多媒体课件系统功能图

19.如何书写多媒体课件的文字稿本和制作脚本

文字稿本:学习者特征分析;教学目标的描述;知识结构的描述;完成稿本卡片 制作脚本:完成了对课件的教学设计和软件系统结构的设计以后,应由专门的稿本编写人员按照设计阶段的思想和原则并结合计算机编程技术把由内容专家提供的文字稿本改写成软件制作稿本即制作稿本,实现教学思想、教学经验与计算机技术的统一与结合。

推荐第6篇:《地理信息系统原理及应用》多媒体教学软件设计和实现

【论文关键词】地理信息系统原理及应用 多媒体教学 课件设计

【论文摘要】本文介绍了研制《地理信息系统原理及应用》多媒体教学软件的必要性以及软件设计思路及开发过程,着重阐述了该教学软件的特色和教学效果。

一、引言

《地理信息系统原理及应用》是测绘工程、土地管理专业方向的专业课。作为“3s”之一的地理信息系统(GIS)是以空间数据库为基础,在计算机软硬件环境的支持下,对空间相关数据进行采集、管理、操作、分析、模拟和显示,适时提供空间和动态的地理信息,为决策服务的一类信息系统。目前GIS技术广泛应用于测绘、地质、环境管理、资源规划、交通、水利、邮电、通讯等领域,并发挥极其重要的作用。《地理信息系统原理及应用》是一门实践性相当强的学科,如数字化仪的操作和软件的使用等,即使教师在课堂上讲述如何使用数字化仪以及使用数字化仪的操作步骤,但是课后学生在实际的操作过程中还是一头雾水,不知道从何下手。为解决此问题有必要设计一套地理信息系统多媒体教学软件,通过多媒体软件中的演示模拟实验、典型实例分析、知识层次的有机组织以及计算机技术的应用,使学生更好地理解并掌握这门学科,优化教学过程,提高教学质量。

二、多媒体软件的设计思想

《地理信息系统原理及应用》多媒体课件采用软件工程的思想来设计开发的,可以改变多媒体教学软件过程开发中的小作坊的操作模式,提高对开发过程的管理、提高教育教学软件的质量、对教育教学软件的维护、升级和交流都具有重要的意义。地理信息系统原理及应用的内容涉及到GIS相关概念、GIS基础理论、GIS软件设计、GIS软件应用、GIS发展趋势等相关内容。多媒体软件基于上述内容,利用计算机多媒体辅助教学,使学生在交互状态下学习,掌握系统开发程序,调动学生的积极性。作为教学过程的一种辅助手段,它的设计必须遵循教学大纲与教学进度的原则来设计开发。

根据教学内容,明确要实现的教学目标,以及实现教学目标的途径——教学策略的分析,确定课件的总体框架和表现方法,进行课件的总体设计,确定教学软件开发所使用的平台。

三、多媒体软件的开发流程

(一)总体框架设计

该软件具有先进、丰富的可视音频、可视媒体集成制作解决方案,由于它具有提供多样化的文字处理能力,可以在屏幕上编辑对象的功能,以及提供的模版等功能及多样化的交互手段、具有动态链接功能等诸多特点。通过总体框架设计实现了对教学内容整理与组织,做到资料详尽确切、层次丰富、链接灵活。[1][2][3]下一页 (二)脚本的编写

课件的脚本是课件的设计蓝图,作者应该根据教学目标,确定课件的具体表现方法和内容,直到每一屏幕(页)的具体内容安排,如各种媒体的排放位置、媒体元素出现的时刻、交互方式以及画面的链接等,都要非常具体和明确。脚本的设计还要根据创作工具的特点以及人接受信息的心理特征等综合因素来考虑。脚本的设计过程实际上就是一个创意过程,创意的好坏取决于对教学内容的理解程度以及创作人员的水平,对课件的最终质量有很大的决定作用。[!--empirenews.page--] (三)素材的准备

多媒体课件中的基本素材有相当一部分要事先准备好,如文字、图像、声音、动画、影像等原始素材,需要通过一定的方法采集或制作,有些还需要预先处理和编辑,如地理信息系统软件的具体操作等内容均需要制作成视频讲解的形式,使学生在观看软件操作后,在以后的上机操作过程能够较好地掌握软件具体的操作过程,提高了教学效果。在视频文件的制作主要采用Snagit窗口捕捉文件,把捕捉到的文件转变为.way格式的文件,然后借助Premiere软件进行剪辑、添加音频文件。或者直接利用数码摄像机进行拍摄,然后用Premiere进行剪辑。

(四)创作设计CAI软件

根据脚本设计的要求,在Authorware环境中把各种媒体素材集成创作为一个课件。对教学内容的组织进行评价修改,与教学策略、教学方法和手段有机地结合,针对个性化自主学习需要,创建协作交流的学习环境。课件完成后,还要经过试运行检验和使用评价,必要时还要作修改。能否达到预想的效果,取决于所用的创作工具和创作软件使用的熟悉程度。在多媒体课程开发过程中遵循总体设计、结构设计、知识点设计的软件工程方法,采用螺旋式生命周期,在原型设计基础上开发并经试点后反复修改设计制作,并将多媒体教学的实践经验实施在多媒体课程中,对不同部分着重体现不同的教学思想。

四、多媒体建设内容与特色

(一)多媒体建设内容

地理信息系统原理及应用多媒体课程主要包含有GIS相关概念、GIS基础理论、GIS软件设计、GIS软件应用、GIS发展趋势、系统设定和结束学习等7个模块组成。在GIS相关概念模块中,主要介绍“地理信息系统的发展背景、地理信息系统的定义以及地理信息系统在各国的发展历史;在GIS基础理论模块中,有按照篇章结构组织的教学内容,主要介绍了地理信息系统的两种主要的数据结构:栅格数据结构和矢量数据结构,以及两种数据结构之间的相互转换方法,同时还介绍了地理信息系统中的数据模型——数字地面模型网络模型以及地理信息系统的空间分析方法等内容;在GIS软件设计模块中介绍了GIS软件设计的基本技术、方法、路线等;在GIS软件应用模块中介绍了基于Arview、Maplnfo等GIS软件在具体的行业中的开发实例;在GIS发展趋势模块中包含GIS将来的发展趋势以及目前使用的主流GIS软件;系统设定模块可以添加背景音乐,了解开发本课件人员的相关情况;结束学习模块用来结束本课件的学习。上一页[1][2][3]下一页 (二)多媒体建设特色

1.基于资源的教学方式

多媒体课程的设计是依据马明栋教授主编的《地理信息系统原理及应用》基础进行的,充分体现了教学改革的成果,并反映了GIS技术的发展。多媒体课程的教学内容紧跟GIS技术的发展趋势,涵盖本门课程全部基本知识点,教学内容新,内容组织结构清晰合理,便于课件组织、扩充、修改,随时可添加计算机新技术、新概念和新知识。

2.多媒体课程系统性强、信息量大[!--empirenews.page--] 完成了全部以Authorware页为表现形式的教学内容,约300页。基础理论篇动态案例5个,图片约100幅;GIS动态案例15个、视频5个(以上数据在课件的制作中仍需要改动)。完成与课程内容相配套的教学指导电子教案。设计了与课程内容配套的l0个教学实验完成实验案例2个。

3.引导学生自主学习

通过多媒体课件,让学生了解本课程的教学目的、教学内容、教学要求、参考学时及教学大纲,本课程的教学重点及难点,便于学生课后复习。充分发挥计算机存储与检索的功能,实现与课程教学内容相关的目录检索和关键字检索;以知识点为单元,树状目录与网状结构共存,提高学习灵活性。

4.多媒体课程功能丰富

浏览功能通过目录、导航、热字及超链接进入相关知识点。做到资料详尽确切、层次丰富、链接灵活,树状目录与网状超级链接并存。多渠道的内容导航,方便学习者在课程内容之间进行跳转。结构导航功能使学习者在整个多媒体课程范围内迅速地进入想学的内容。

五、初步教学实践

近来,利用开发建设的教学资源在教学方法和手段上进行了大胆的改革尝试,主要从多媒体课程进行教学实践。自2002年1月开始利用多媒体教学支撑软件平台和多媒体课件,在2002级开始教学实践,在实践中不断地探索多媒体化教学的方法与手段。

采取调查问卷的形式对上课的同学进行调查,调查结果表明:学生对采用多媒体化教学的满意率比较高。大部分学生认为多媒体上的教学资源好、内容系统、重点突出、’适合于自主学习、课件设计、内容安排有启发性、注重能力培养,与课堂教学相比,知识的获取多;而且大部分的学生通过多媒体教学自学、自控能力有所提高并提高了归纳总结能力;但是应该看到在多媒体上教学的质疑情况并不好,如对于喜欢传统授课的同学,他们更习惯面对面的交流,传统的教学方法与手段对他们的影响相当深。

六、结束语

多媒体教学是伴随多媒体技术地发展而兴起的新事物,是一种节省教育资源、方便教学内容的更新、培养学生适应在信息化社会中工作、学习和生活能力的良好的方法。《地理信息系统原理及应用》多媒体课程作为多媒体教学的一种有益尝试,虽然初具规模,但仍有许多需要改进和完善之处。随着计算机技术的飞速发展,对多媒体教学会有更高的要求和创新点。

推荐第7篇:软件设计辞职报告

软件程序员是一个工作压力非常大的职业,下面就是小编为您收集整理的软件设计辞职报告的相关文章,希望可以帮到您,如果你觉得不错的话可以分享给更多小伙伴哦!

软件设计辞职报告一

尊敬的领导:

您好!

在经过我长时间的考虑之后,结合我自身的实际情况,我不得不作出辞职申请,因为很多的实际情况,我已经无法继续在公司中工作下去,这些是我不愿意看到的,也是领导不愿意看到的。可是现实就是这样,谁也无法左右,我感到十分的无奈,我会牢记我在今公司中工作的过去的。

入职以后先后在宽带无线接入和gb维护开发部门工作,xx年年2月正式转正。转正成绩为c。以后的工作中表现正常,两次季度考核都获得c。由于个人的从业经历和专业的问题,对无线产品没有知识积累,但是在工作中我努力学习,积极请教,能够完成公司交给我的任务。

在职期间两个部门的主管对我的生活和工作都非常的关心,经常进行思想交流和技术点拨,使我受益很大,感谢领导们的关心。辞职主要原因是我自身的问题,无法适应目前的工作压力,精神上和身体上已经不勘重负。另一个原因是在华为入职以来一直找不到自己的位置,无法给自己定位。海外的生活使我感觉自己的性格特点和思维方式无法适应华为海外团队的文化。

出于保护自己的目的,特向您提出辞职申请。希望早日回到国内,完成离职手续,有时间调整自己的身体状态和精神状态。我想我会在调养好自己的身体之后,继续不断的努力工作下去的。可是现在的情况是我已经无法继续高质量完成公司的工作了,我只好选择离开,我在今后的工作中一定会更好的工作下去的。前提是我一定要养好自己的身体,我坚信自己能够走好!

请对我个人给予充分的谅解,并批准我的辞职申请,谢谢。

软件设计辞职报告二

尊敬的××领导:

当我在凌晨三点读到这段话时,心里面感慨万千,久不能眠。于是我打开Notebook,给您写了这封辞呈。

去年底开始,去与留这二字,在我心里一直反复。直到我想到了这句话“当您在很难作出选择的时候,您必须尊重发自你内心的声音”。当初进入公司时您对我的满怀期许。而我自持在外企呆过,做事条理清晰,对自已充满信心,看不到自已的短处。想起这些至今令我汗颜。

记得当时我在工作上遇到困难与挫折,我与我夫人商量准备离开公司时。我夫人一句意味深长的话让我留了下来。她说:“您先呆着看看,有的时候坏事它也末必是坏事”。我现在得感激她,因为现在看来,她的话是对的。是她的这句话,使我在工作之余每天都在反省自已的不足之处,并想办法加以弥补。我终于明白了一个道理,一个人在反省中不断完善和超越自我是多么的重要。

IT是一个技术性很强的行业,个人曾经历过一个又一个开发工具从受到大家的追捧到被冷落。最后我发现,我应抓住其中的一些基础的,和永恒的不变因素,即便人人都有权力去选择他感兴趣的部分。因此我努力的找到了自已的兴趣与擅长。并不断努力的学习。

在这三年的工作时间里曾经有过的激情,迷惘,彷徨,和温暖,感悟,奋进。父亲交给我的坚毅,诚实的心态使我在这些过程中坚难的走了过来,并在工作中,生活中不断的修正自已,努力的提高自已的认识。我也并因此而重拾生活的信心。

回首过去,当我想到要有足够的胸怀来接受你不能改变的事情,要有足够的勇气来改变你能改变的事情,要有足够的智慧来区分二者的不同.时,我恍然大悟,原来是因为自已的胸怀不够.人生无法重来,但是可以随时重新来,我有选择的权力.....曾记起研究开发部的朝气,热情。技术工程部的和谐,沉稳,责任。这些都给我留下难以磨灭的印象,它已深深的印在我的脑海里,也必将让我时常想起一起共事过的各位同仁。

最后我发自内心地——

感谢和一起工作过的同仁,我曾经和他们度过了一段非常快乐的,令我难忘的时光。

感谢您这几年来对我的厚爱,对我自身存在缺点的包容,以及对我在工作中所犯错误的指正。您那颗正直的心,满怀激情的人生态度、宽广的胸怀、机敏的处事方式、必将令我受用终身。

也正因此,我祝愿您,您也必将用您的智慧引领公司走向一个更加高远的,全新的末来。

×× 敬上

推荐第8篇:软件设计说明书

设计说明书

1 引言

水利方向一直是国家十分重视且投入巨大的方向,它关乎方方面面。百姓生命安全、水资源的利用、农业的灌溉等等,都与其息息相关,但是,正因为它的无处不在,导致如果使用传统的手段,将需要消耗过多的人力,效率极其低下,甚至是不可完成的,所以,水利也需要更加现代化的手段去完成预期的目标,水利自动化就是为了这一目的而提出来的。水利自动化可以大大提高数据测量的准确度和控制的可靠性,提高效率,降低劳动强度,充分利用现有设备,从而对于当地水利单位和水利公司均能带来可观的经济和社会收益。

1.1 编写目的

a.编写本说明书的目的在于阐明用户的要求的,描述出系统的需求模型、功能和性能要求以及其他约定,为后期的软件设计等工作提供依据。

b.本说明书的预期读者为用户、系统设计员及其他开发人员和相关审核检测人员。

1.2 背景

本项目的任务提出者及开发者是北京恒宇伟业科技发展有限公司生产部开发小组:

项目负责人:

硬件设计工程师:

系统分析员:

系统设计员:

编码员:

软件测试员:

用户为各地方招标业主单位,该软件在WINDOW7系统下,在IAR FOR MSP430环境下完成开发,

1.3 定义

RTU:远程终端单元。

水文监测系统:是指用于对各类水文要素实施采集、传输、处理的总体。

1.4 参考资料

水文检测数据通信规约 (SL651-2014) 2 设计总体

2.1 需求规定

本软件系统的各种用户是唯一的参与者,参与者通过使用事件与系统进行交互,所有的使用事件综合起来即构成了用户的功能需求。本系统通过用户操作键盘操作及显示屏显示交互设定相关系统、通讯、传感器参数,查看历史数据和系统运行状态。

2.2运行环境

本软件属于工业级产品设备运行系统,运行在基于MSP430F5438A CPU芯片的自助设计的电路板上。部分操作依托于外部传感器设备。

2.3 基本设计概念和处理流程

2.4 结构

初始化函数流程图

Main函数流程图

数据发送流程图

水位数据采集流程图

雨量数据采集流程图

数据处理模块流程图

输入数据处理模块

2.5 功能需求与程序的关系

主程序函数

main(); 系统滴答初始化

Init_CLK();

GPIO口相关映射初始化

Init_Port();

; UART口相关初始化

Init_RSUART()

; 键盘相关初始化

Init_Keypad(); 菜单链表初始化

Init_Menu(); 系统时钟读取

RX8025_R(); 本地网络修复模块

NetFix(); 输入数据处理模块

IO_ReportDeal(); 菜单模块

Menu_Ctrl(); 雨量数据处理模块

Msg_RainDDeal(); 水位数据处理模块

Msg_WaterDeal(); 报文拼组模块

Msg_PostDeal(); 数据发送模块

NT_SendMsg(); 系统参数变更存储模块

SysParSave();

2.6 人工处理过程

用户通过键盘及显示屏,依靠系统菜单,对相关内容进行设置,以达到按照具体需求运行程序获得预期效果的结果。

2.7 尚未解决的问题

未能对摄像头图片数据进行采集及传输。

3 接口设计

3.1 用户接口

通过菜单项提供用户接口,其操作简单、功能直观,故不再详述,用户接口如下: 主菜单:系统参数 通讯参数 传感器参数 历史数据 当前通讯状态

系统参数:终端号 系统时钟 密码设置 次雨量清零 人工置数 修改密码 恢复出厂设置 通讯参数:起始发送时间 当日发送次数 GPRS设置 GSM设置

传感器参数:水位计类型 雨量计精度 水位预警值 水位变化阈值 水位基值 历史数据:历史数据查询 历史数据清空

当前通讯状态:信号强度 网络通讯状态 实时时钟

3.2 内部接口

按键中断响应

#pragma vector=PORT1_VECTOR __interrupt void Port1(void) 雨量中断响应

#pragma vector=PORT2_VECTOR __interrupt void Port2(void) 普通串口中断响应

#pragma vector=USCI_A0_VECTOR __interrupt void USCI_A0_ISR(void) GPRS通讯串口中断响应

#pragma vector=USCI_A1_VECTOR __interrupt void USCI_A1_ISR(void) 485中断响应

#pragma vector=USCI_A2_VECTOR __interrupt void USCI_A2_ISR(void) 232中断响应

#pragma vector=USCI_A3_VECTOR __interrupt void USCI_A3_ISR(void)

3.3 外部接口

硬件接口:

标准串口,485口,232口,格雷码口,模拟量输入口,12V供电输出口,24V供电输出接口 软件接口:

关联程序:编译器等

4 运行设计

4.1 运行模块组合

水位采集模块→处理模块→报文拼组模块→数据发送模块→历史数据存储模块 雨量采集模块→处理模块→报文拼组模块→数据发送模块→历史数据存储模块 按键响应模块→菜单模块→系统参数更新存储模块 输入数据处理模块→报文拼组模块→数据发送模块

4.2 运行控制

由用户通过菜单选项进行控制。

4.3 运行时间

根据当前时间的采集任务及发送任务量决定

5 系统数据结构设计

5.1 逻辑结构设计要点

本系统各功能紧密结合,为尽量避免相互影响出现错误,系统严格按照时间顺序运行,保证数据的绝对准确,各端口数据独立接收,统一处理,保证数据不会混杂的前提下,保证更高的处理效率。

6 系统出错处理设计

6.1 出错信息

当软件进行硬件运行检查,发生错误会重复启动多次避免偶然情况导致硬件运行不正常,在多次检验无法通过时,会在显示屏提示出错原因,保住维护人员排查原因。

6.2 补救措施

故障出现后可能采取的变通措施,包括:

a.通过对系统参数进行分析,自主判断问题原因,并采用预置的解决方案进行解决。

b.通过在程序各函数打印运行LOG并向串口发送,帮助排查人员了解当前运行情况,便于解决问题 c.恢复及再启动技术说明将使用的恢复再启动技术,使软件从故障点恢复执行或使软件从头开始重新运行的方法。

6.3 系统维护设计

正确性维护:在运行过程中发现错时,根据发生错误的功能项找到相应模块,对出错模块单独测试和修改。 适应性维护:软件的运行平台限定特定硬件平台上,限定住可能出现问题的范围,便于排查。

完善性维护:为了应对用户新提出的要求或改善性能,增加新的功能时,由于系统模块间的独立性,新功能通常可以单独形成新的模块,经测试后拼加到系统中,而对其他模块影响不大;改善某模块的性能(提高处理效率,改善程序结构等)时,只需对相应模块进行改进,然后还原到系统中。

推荐第9篇:软件设计报告

软件设计报告

姓名: 方轶琦

学号:10005808

2013年6月18日~2013年6月28日

第一章 软件设计介绍 .........................................................1 第三章 软件设计的内容 .......................................................4 3.1 分数统计软件(A1) ...................................................4 3.1.1设计题目及要求 .....................................................4 3.1.2设计思想及程序流程框图 .............................................4 3.1.3逻辑功能程序 .......................................................5 3.1.4结果及完善方向 .....................................................5 3.2 打字软件(A2) .......................................................9 3.2.1设计题目及要求 .....................................................9 3.2.2设计思想及程序流程框图 .............................................9 3.2.3逻辑功能程序 ......................................................10 3.2.4结果及完善方向 ....................................................10 3.3 文本编辑器(A3) ....................................................13 3.3.1设计题目及要求 ....................................................13 3.3.2设计思想及程序流程框图 ............................................14 3.3.3逻辑功能程序 ......................................................14 3.3.4结果及完善方向 ....................................................17 3.4 加密软件(A4) ......................................................19 3.4.1设计题目及要求 ....................................................19 3.4.2设计思想及程序流程框图 ............................................19 3.4.3逻辑功能程序 ......................................................19 3.4.4结果及完善方向 ....................................................19 3.5 进制转换器(A5) ....................................................23 3.5.1设计题目及要求 ....................................................23 3.5.2设计思想及程序流程框图 ............................................23 3.5.3逻辑功能程序 ......................................................24 3.5.4结果及完善方向 ....................................................29 3.6 学生成绩核算系统的设计与实现(B1) ..................错误!未定义书签。 3.6.1设计题目及要求 ....................................................30 3.6.2设计思想及程序流程框图 ............................................30 3.6.3逻辑功能程序 ......................................................32 3.6.4结果及完善方向 ....................................................32 3.7 模拟电信计费系统的设计与实现(B2) ..................................39 3.7.1设计题目及要求 ....................................................39 3.7.2设计思想及程序流程框图 ............................................40 3.7.3逻辑功能程序 ......................................错误!未定义书签。 3.7.4结果及完善方向 ....................................................41 第四章 心得体会 ............................................................49

软件设计报告 10005808 方轶琦

软件设计介绍

一. 软件的设计概念

软件设计是把许多事物和问题抽象起来,并且抽象它们不同的层次和角度。建议用数学语言来抽象事务和问题,因为数学是最好的抽象语言,并且它的本质就是抽象。将复杂的问题分解成可以管理的片断会更容易。将问题或事物分解并模块化这使得解决问题变得容易,分解的越细模块数量也就越多,它的副作用就是使得设计者考虑更多的模块之间耦合度的情况。

二.软件设计的性质、目的:

本课程是一门技能训练课,为在校学生的必修课程。通过设计培养学生良好的编程习惯,使学生掌握编程的基本步骤,规范学生的编写程序的格式,锻炼学生编写程序的能力,为将来编写较大程序的打好基础。

三.软件设计总时间:二周

四.实验设备:南京邮电大学微机室微机。 五.软件设计的任务

通过集中时间上机实验,使学生充分发挥已有的编程能力,熟悉编译环境,选择若干课题,进行审题、分析、设计和调试,并根据要求写出实验报告。

六.实验内容

软件设计课题共分A、B两档。A档共5题,第一周完成;B档共2题,第二周完成。

软件设计报告 10005808 方轶琦

第二章

软件开发平台简介

Visual Studio 2008 简介

Microsoft® Visual Studio® 2008 使开发人员能够快速创建高质量、用户体验丰富而又紧密联系的应用程序,充分展示了 Microsoft 开发智能客户端应用程序的构想。借助 Visual Studio 2008,采集和分析信息将变得更为简单便捷,业务决策也会因此变得更为有效。任何规模的组织都可以使用 Visual Studio 2008 快速创建能够利用 Windows Vista™ 和 2007 Visual Studio system 的更安全、更易于管理并且更可靠的应用程序。

Visual Studio 2008 提供了高级开发工具、调试功能、数据库功能和创新功能,帮助在各种平台上快速创建当前最先进的应用程序。

Visual Studio 2008 包括各种增强功能,例如可视化设计器(使用 .NET Framework 3.5 加速开发)、对 Web 开发工具的大量改进,以及能够加速开发和处理所有类型数据的语言增强功能。Visual Studio 2008 为开发人员提供了所有相关的工具和框架支持,帮助创建引人注目的、令人印象深刻并支持 AJAX 的 Web 应用程序。开发人员能够利用这些丰富的客户端和服务器端框架轻松构建以客户为中心的 Web 应用程序,这些应用程序可以集成任何后端数据提供程序、在任何当前浏览器内运行并完全访问 ASP.NET 应用程序服务和 Microsoft平台。

Visual Studio 2008 具备如下优势:

快速开发新突破

从建模到编码,再到调试,Visual Studio 2008 提供了增强的编程语言、设计器、编辑器以及和数据相关的新功能,可以帮助您体验到生产力的突破。

创建杰出的用户体验

Visual Studio 2008为开发人员提供了新的工具,通过使用最新的平台,如Web, Windows Vista、2007 Microsoft Office System、Microsoft SQL Server 200

8、Windows Mobile®以及Windows Server®2008,开发人员可以快速创建个性化很强的用户体验以及互联的应用程序。

跨越开发周期的协作

Visual Studio 2008 可以让开发人员、设计人员、测试人员、架构师以及项目经理通过共享工具以及过程整合的方式,实现协同工作,从而减少了解决方案所花费的时间。

采用统一整合的方式处理数据

Visual Studio 2008 可以显著的改进开发人员处理数据的方法。传统方式中,开发人员不得不根据数据的存储位置以及用户的连接方法,对数据进行不同的操作。通过语言集成查询(Language-Integrated Query, LINQ), 开发人员可以使用单独的模型来查询并转换XML, Microsoft SQL Server™和对象数据,而不需要学习或使用特定的编程语言,这样就降低了复杂度并提高了生产力。

体验全新的Web开发工具

Visual Studio 2008为公司或开发团队提供了一个健壮的、端到端的平台来构建应用程序并通过Web 方式提供应用程序。通过Visual Studio 2008, 开发人员可以很容易的将最新的Windows Presentation Foundation (WPF) 功能整合到现

有的Windows Forms 应用程序以及新的应用程序中,并在Windows平台上创建高保真的用户体验。通过额外的ASP.NET AJAX 1.0和Microsoft

软件设计报告 10005808 方轶琦

IntelliSense®以及对调试JavaScript 8.0的支持,构建AJAX 应用程序将会更加快捷。增强的Web 设计器带有分离视图编辑功能,可以让开发人员同时看到HTML 页面以及结果页面,从而提升了Web 开发的体验。

将数据库功能整合到应用程序生命周期的管理中

Visual Studio 2008为不同的团队成员提供了一系列针对架构、设计、程序开发、数据库开发以及应用程序测试的相关工具。Microsoft Visual Studio Team System 2008 Database Edition 目前已经全部整合到了Microsoft Visual Studio Team System 2008 Team Suite 中。

构建运行在多个版本的 .NET Framework 之上的应用程序

通过Visual Studio 2008, 开发人员可以使用一个工具来管理并构建针对多个版本的.NET Framework 的应用程序。Visual Studio 2008将会自动让项目以及设置适应开发人员所指定的.NET framework 版本。开发人员不再需要安装多个版本的Visual Studio 来维护运行于多个版本的 .NET Framework 之上的应用程序。

为Microsoft Office 系列构建可靠的、可伸缩的应用程序

Visual Studio Tools for Office 目前已经完全整合到了Visual Studio 2008 专业版当中。Visual Studio 2008可以让开发人员自己定制Microsoft Office Word, Microsoft Office Excel ,Microsoft Office PowerPoint , Microsoft Office Outlook ,Microsoft Office Visio , Microsoft Office InfoPath , 以及Microsoft Office Project, 从而提升用户生产力并且更有效的利用了Office 2007 中的新增功能。对Microsoft Office 进行自定义,同时应用程序支持ClickOnce 部署,从而使开发人员可以采用正确的工具以及框架来实现对Microsoft Office 解决方案进行从容部署。

为Windows Vista 构建完美的应用程序

Visual Studio 2008可以让开发人员快捷的创建出同Windows Vista 外观风格一样炫的应用程序,并且可以利用Windows Vista 中所提供的8000多种新API.

在开发人员和设计人员之间实现无缝协作

Microsoft已经针对设计人员发布了名为Microsoft Expreion的工具。在Visual Studio 2008中,来自于Microsoft Expreion Web 以及Microsoft Expreion Blend™中的设计元素可以在不更改后台代码的情况下,从Visual

Studio 中进行导入导出的操作。这就意味着开发人员和设计人员可以实时的进行无缝协作,并且不用担心用户界面设计更改所引起的开发问题。

软件设计报告 10005808 方轶琦

第三章 软件设计的内容

3.1 分数统计软件(A1)

3.1.1设计题目及要求 设计题目:分数统计 要求:(1)、输入某班级学生的姓名、分数;

(2)、对(1)的分数进行降幂排列并输出; (3)、具有输入输出界面。 3.1.2设计思想及程序流程框图

这道题我是用C# 的可视化环境制作了一个分数统计系统。制作的界面如图3.1-1所示:

实现的功能和设计方法:

1.在“姓名”和“分数”后面的文本框内输入学生信息,输入完毕后,按“输入”按钮,学生信息就会显示到左下方的listbox中。

2.当用户输入若干名学生信息后,按“排序”按钮,右下方的listbox中就会显示按成绩降幂排序后的学生信息。排序方法是使用冒泡排序法。

3.当用户输入学生信息出错时,用鼠标选择出错项,按下“删除选中的输入项”,即可删除输错项,继续输入学生信息。方法是用listBox.SelectedIndex找到选中的索引值,然后删除数组中该学生信息和listbox中信息就可以了。

4.当用户想重新输入学生信息,按下“重新开始”清空数组和listbox中的信息。

5.当用户要结束操作,按下“结束”,调用close()函数就可以跳出界面。主程序的流程图如图3.1-2所示。 冒泡排序的流程图如图3.1-3所示。

软件设计报告 10005808 方轶琦

开始N=学生数i=0ii?N开始输入学生信息score[j - 1]

图3.1- 1 主流程图

图3.1- 2冒泡排序流程图 3.1.3逻辑功能程序 具体程序如下:

#include #include #include struct student //存放学生信息的结构体 { char name[20]; //字符型数组存放姓名

int grade; //成绩类型 } temp,std[100]; int main() { int err; char x[5]; int n; int i; int m; char ch[20];

软件设计报告 10005808 方轶琦

do { system("cls"); printf(" \n\n"); printf("

-------- \n"); printf(" | 欢迎使用本系统 | \n"); printf("

-------- \n"); printf(" \n"); printf("

-------------请输入学生数--------------\n\n"); do{ printf("\t\t学生数: ");

err=0;i=0;

scanf("%s",x); //输入选项

getchar();

while(x[i]!='\0') //依次检查输入的字符串是否为数字

{

if(x[i]>'9'||x[i]

i++;

} if(err) printf("\n\t\t请输入数字!\n"); }while(err);

n=atoi(x); //将字符型数组x转换成整型n for(i=0;i

{ printf("\n\t\t请输入第%d个人的信息\n\t\t姓名:",i+1); scanf("%s",std[i].name); getchar(); printf("\t\t分数:"); scanf("%d",&std[i].grade); getchar();

}

printf("输入信息:\n"); printf(" ---- \n"); printf(" 姓名 成绩 \n\n"); for(i=0;i

printf(" %s %d\n",std[i].name,std[i].gra

软件设计报告 10005808 方轶琦

de); } printf("\n\n ---- \n");

printf("\n排序后信息:\n"); for(m=0;m

if(std[i].grade

{

temp=std[i];

std[i]=std[i+1];

std[i+1]=temp; //成绩按降幂排序

} } printf("\n您所输入的学生名次如下:\n\n"); printf("

------------ \n"); printf(" 名次 姓名 成绩 \n\n"); for(i=0;i

第 %d 名 %s %d\n",i+1,std[i].name,std[i].grade); } printf("\n\n ------------ \n"); printf("\t您还继续吗?请按Y键继续:"); //选择是否继续

scanf("%s",ch); } while(ch[0]=='Y'||ch[0]=='y'); //与开头组成do-while结构循环

printf("\t"); return 0; }

软件设计报告 10005808 方轶琦

图3.1—4

图3.1- 3 运行结果

系统的完善:

软件设计报告 10005808 方轶琦

1.当用户在分数框输入了非数字字符,则会提示用户输出正确格式的分数。2.当用户未完整输入姓名和分数,系统会提示用户完整输入。 完善方向

该系统虽然考虑了并完善了很多用户操作可能出现的错误,但仍然有不足之处。比如,本系统中的删除按钮只能在用户排序前删除用户想删除的信息。若用户排序后删除左边栏目里的学生信息,再来排序,这时排序出的结果就可能会出错。这点是需要改进的。

另外这题和数据库SQL连接起来,程序会更加简单方便。这方面还需加以学习。

3.2 打字软件(A2)

3.2.1设计题目及要求 设计题目:打字程序 要求:(1)随即产生一字符串,每次产生的字符串内容、长度都不同;

(2)根据(1)的结果,输入字符串,判断输入是否正确,输出正确率;

(3)具有输入输出界面。 3.2.2设计思想及程序流程框图 设计思想:采用C#界面编程。

(1).从题目的要求可知,本系统要求随机产生字符串,字符串的内容和长度都是随机的。要产生随机数,就可以使用rand()函数。设定字符串最长为20。用rand.Next(min, max)函数就可以产生min~max之间的随机数。

(2).为使系统随机产生字母字符,首先用rand.Next(0,25)产生0~25的随机数,将随机数加上97,然后再将数字转换为相应的ASCII码的字母就可以了。

(3).正确率的计算。将系统产生的随机字符和用户输入的字符进行逐个比较统计出相同的字符个数,在与系统产生的字符总数相除便可得到得正确率。

设计的用户界面如图3.2-1所示。主流程图如图3.2-2所示

开始 产生随机字符串用户输入字符串计算正确率N结束?Y结束

图3.2- 1主流程图

界面按钮功能设计思想:“开始”:按下后,首先清空界面的三个输入文本框

软件设计报告 10005808 方轶琦

textbox。然后再随机生成字符串显示在第一个文本框textbox1中。

“确定”:用户在第二个文本框textbox2中输入字符串后,按下确定按钮,首先系统会读入用户的字符串,然后与系统字符串比较,计算出正确率最后输出到正确率的文本框里。

“结束”:使用close()函数,按下后退出系统。 3.2.3逻辑功能程序 具体程序如下:

#include #include #include #include #define max_len 40

//定义产生的字符串最长为40个字符

void rand_str(char *p,int length); double compare(char *p,char *s,int length); void display();

int main() {

char ch[20]; int length; double flag; srand(time(NULL)); char p[80]=""; char s[80]="";

display();

do {

char p[80]="";

char s[80]="";

printf("\n\t----\n");

length=1+rand()%max_len;

rand_str(p,length);

printf("\n\t----\n");

printf("\t请输入上面的字母:\n");

printf("\t");

fflush(stdin);//减少不必要错误

scanf("%s",s);

flag=compare(p,s,length);

if(flag==1)

printf("\t输入完全正确!\n");

else

软件设计报告 10005808 方轶琦

printf("\t输入有误,您本次输入正确率:%0.2g%%\n",flag*100);

printf("\t\n");

getchar();

printf("\t您还继续吗?请按任意键继续或者按N键结束:");

scanf("%s",ch);

}while(ch[0]!='N'&&ch[0]!='n');

printf("\t"); return 0; }

void rand_str(char *p,int length) { int i; char ch; printf("\t");

for(i=0;i

{ int num;

do

{

num=65+rand()%(122-65+1);

}while(num>90&&num

ch=num;

printf("%c",num);

p[i]=ch;

} }

double compare(char *p,char *s,int length) { int j; int number=0; double rate; for(j=0;j

if((p[j]-s[j])==0)

number=number+1; } rate=1.0*number/length; return rate;

软件设计报告 10005808 方轶琦

}

void display() { printf("\t****************************************************************\n"); printf("\t****************************************************************\n"); printf("\t**

欢迎进入打字练习程序

**\n"); printf("\t****************************************************************\n");

printf("\t****************************************************************\n"); printf("\t\n"); }

程3.2.4结果及完善方向

序运

行结果:

软件设计报告 10005808 方轶琦

用户按下开始按钮后,输入字符串,最后按下确定按钮的程序运行情况如图3.2-3所示。

按下开始按钮

输入字符串后按下确定按钮

图3.2- 2 程序运行结果

系统的完善

最初编写的程序中存在输出正确率的BUG。就是在用户输入字符串的前半段和系统的字符串一样,而后面又多输入了其他字符,这时算出的正确率是100%,这在常理上是不正确的,发现错误后,更正了正确率的计算方法。

当用户输入的字符串长度小于或等于系统产生的字符串长度时,正确率的计算方法为:

与系统字符串相同的字母数正确率=

系统产生的字符串长度当用户输入的字符长于系统字符串长度时,正确率的计算方法为:

与系统字符串相同的字母数正确率=

用户输入的字符串长度这样就避免了之前的错误情况。 完善方向

本打字系统仍然有需要完善的地方,如可增加计时系统,这样就增加了打字程序的趣味性。系统中正确率的计算方法也有待改进。

3.3 文本编辑器(A3)

3.3.1设计题目及要求 设计题目:文本编辑器 要求:(1)、编辑文本;

软件设计报告 10005808 方轶琦

(2)、保存、打开指定位置的文本文件; (3)、具有输入输出界面。 3.3.2设计思想及程序流程框图

文本编辑器的界面设计,我是参考了word中提供的部分功能,用C#界面环境设计编写一个小型的文字编辑工具。

在C#界面的工具箱中,RichTextBox控件拥有非常强大的文字格式化功能。很多对文字文本的各种操作只需要调用RichTextBox控件中的函数,就可以搞定,非常的方便。

界面设计时,具有工具栏和功能图标按钮,提高了操作的便利性。 文本编辑器的界面如图3.3-1所示。

文本编辑器具有三个大模块,具有以下功能: 1:文件:(新建 打开 保存 退出)

2:编辑:(撤销 恢复 全选 复制 剪切 粘贴 清除) 3:帮助:(关于版权信息) 模块结构如图3.3-2所示。

开始用户选择操作文件编辑帮助关于新建打开保存退出撤销恢复全选复制剪切粘贴清除 图3.3- 1模块结构图

3.3.3逻辑功能程序 具体程序和注释如下:

#include #include //包含exit(1)的原型 #include #include"windows.h"

void create_file(FILE *fp,char *fname); //建立文本函数 void write_file(FILE *fp,char *fname); //编辑函数 void read_file(FILE *fp,char *fname); //读取函数

int main() { FILE *fp;

软件设计报告 10005808 方轶琦

int count=0; char choose[100]; int flag1,flag2,flag3; char F_name[20];

while(1) {

printf("****************************************************************\n"); printf("****************************文本编辑器***************************\n"); printf("****************************************************************\n"); printf("**

1、建立文本 **\n"); printf("**

2、编辑文本 **\n"); printf("**

3、读取文本 **\n"); printf("**

4、退出程序 **\n");

printf("****************************************************************\n");

printf("\t请选择你要进行的文件操作:");

scanf("%s",choose);

getchar();

switch(choose[0])

{

case '1': flag1=1; break;

case '2': flag2=1; break;

case '3': flag3=1; break;

case '4': printf("\t");printf("\n\n\t*** 谢谢使用! ****\n");exit(0); break;

default : printf("\t输入错误!\n");Sleep(500);system("cls");

}

if(flag1==1)

{

flag1=0; printf("\n***********建立文件***********\n");

create_file(fp,F_name);

软件设计报告 10005808 方轶琦

}

else if(flag2==1)

{

flag2=0;

printf("\n***********编辑文件***********\n");

write_file(fp,F_name);

}

else if(flag3==1)

{

flag3=0;

printf("\n***********读取文件***********\n");

read_file(fp,F_name);

}

}

return 0; }

void write_file(FILE *fp,char *fname) { char ch; printf("请键入编辑的文件名(如D: ame.txt):\n\t"); gets(fname); if((fp=fopen(fname,"w"))==NULL) {

printf("不能打开文件!\n");

exit(0); } printf("请输入内容(以#号键结束):\n"); ch=getchar(); while(ch!='#') {

fputc(ch,fp);

ch=getchar(); } printf("\n\n"); getchar(); fclose(fp); Sleep(500); system("cls"); } void create_file(FILE *fp,char *fname) {

软件设计报告 10005808 方轶琦

printf("请键入新建的文件名(如D: ame.txt):\n\t"); gets(fname); if((fp=fopen(fname,"w+"))==NULL) {

printf("不能打开文件!\n");

exit(0); } printf("%s文件已经创建好!\n\n",fname); fclose(fp); Sleep(500); system("cls"); } void read_file(FILE *fp,char *fname) { char ch; printf("请键入读取的文件名(如D: ame.txt):\n\t"); gets(fname); if((fp=fopen(fname,"r"))==NULL) {

printf("不能打开文件!\n");

exit(0); } printf("***********文件内容***********\n"); printf("-------- \n"); while((ch=fgetc(fp))!=EOF) //输出文件直到文件结束符

{

putchar(ch); } printf("\n-------- \n\n"); fclose(fp); Sleep(1000); printf("\n\n"); } 3.3.4结果及完善方向

软件设计报告 10005808 方轶琦

软件设计报告 10005808 方轶琦

系统完善方向

这次设计的文本编辑器基本上能够较好的模拟出word中对文本的部分操作功能。基于RichTextBox控件的功能很多,可以在此基础上添加更多的有用的方便的功能,如改变文本背景颜色,字体格式和颜色,文本左对齐右对齐等。这样文本编辑器的功能就会更加完善。

3.4 加密软件(A4)

3.4.1设计题目及要求 设计题目:加密 要求:(1)输入任意一段明文M,以及密钥K; (2)根据以下公式将其转换为密文C。

Ci = mi

+ K ,其中i = 0,1,„„n-1 , K 为密钥;

(3)具有输入输出界面。 3.4.2设计思想及程序流程框图 设计思想:用C#界面编程。

由题目可以知道,要实现加密,就要对用户输入的字符串进行操作。首先要将用户输入的字符串存入数组。将字符类型转换为相应的ASCII码,再与输入的密钥相加,最后再转换为字符型就可以得到密文。

系统共有三个功能按钮,为“生成密文”,“重新输入”和“结束”。 “生成密文”是按上述的思想对用户输入的字符串进行加密。“重新输入”是清空三个textbox。“结束是”调用close()函数退出系统。

系统界面和系统流程框图如图3.4-1所示。

开始用户输入明文,密钥加密重新开始结束

图3.4- 1

程序流程框图

3.4.3逻辑功能程序

#include #include #include

void dis_menu(); //显示函数

软件设计报告 10005808 方轶琦

void set_menu(); //输入函数

void encryption(char *m, char *c, char *key); //加密函数 void decryption(char *m, char *c, char *key); //解密函数

int main() { while(1) {

dis_menu(); set_menu(); } return 0; } void dis_menu() { printf("\t******************************************************\n"); printf("\t***********************加密解密程序*******************\n"); printf("\t**

1、加密 **\n"); printf("\t**

2、解密 **\n"); printf("\t**

3、退出 **\n"); printf("\t******************************************************\n\n"); printf("\t请选择你要进行的操作:"); } void set_menu() { char m[100]=""; //明文 char c[100]=""; //密文 char key[100]=""; //密钥

char n[100]; scanf("%s",n); if(strlen(n)>1) { printf("\t输入错误!请重新输入:");

set_menu(); } else {

switch(*n)

{

case '1': encryption(m, c, key); break;

case '2': decryption(m, c, key); break;

case '3': printf("\t"); exit(1); break;

default: printf("\t输入错误!请重新输入:"); set_menu(); break;

软件设计报告 10005808 方轶琦

} } }

void encryption(char *m, char *c, char *key) {

printf("\t-----------------------\n"); printf("\t------------------------加密环节----------------------\n"); printf("\t-----------------------\n"); printf("\t请输入需加密的明文:"); scanf("%s",m); printf("\t请输入密钥:"); scanf("%s",key); while(strlen(key)>1) //密钥长度不能大于1 {

printf("\t输入密钥有误,请重输:"); scanf("%s",key); } { int i,length; length=strlen(m); printf("\t你输入的明文为:"); printf("%s\n",m); for(i=0;i

{

c[i]=m[i]+key[0]-'0'; } printf("\t转换后的码文为:"); printf("%s\n\n",c); } }

void decryption(char *m, char *c, char *key) { printf("\t-----------------------\n"); printf("\t------------------------解密环节----------------------\n"); printf("\t-----------------------\n"); printf("\t请输入需解密的密文:"); scanf("%s",c); printf("\t请输入密钥:"); scanf("%s",key); while(strlen(key)>1) {

21

软件设计报告 10005808 方轶琦

printf("\t输入密钥有误(应输入一个字符),请重输:"); scanf("%s",key); }

{ int i,length; length=strlen(c); printf("\t你输入的密文为:"); printf("%s\n",c); for(i=0;i

m[i]=c[i]-(key[0]-'0'); //密文反译

} printf("\t破解后的明文为:"); printf("%s\n\n",m); } } 3.4.4结果及完善方向 运行结果:

用户输入明文和密钥后,按下“生成密文”后的程序运行结果如图3.4-2所示。

22

软件设计报告 10005808 方轶琦

图3.4- 2密钥运行结果

系统完善

1.当用户明文和密钥输入的不完整,系统会提示要求用户输入完整。2.当用户输入的密钥不在要求的0~9之间,系统会提示用户。 如图3.4-3所示。

完善方向

当密钥过大时,生成的密文字符有些无法输出,因此可改进加密算法,更好完善这个加密系统。

3.5 进制转换器(A5)

3.5.1设计题目及要求 设计题目:进制转换器 要求:(1)可输入二进制、八进制、十进制、十六进制数;

(2)将已输入的数转换成其余进制的数; (3)具有输入输出界面。 3.5.2设计思想及程序流程框图 设计思想:

由题目可以知道,本系统要求实现

二、

八、

十、十六进制数之间的相互转换功能。

(1)、对于数字的显示问题,可以用字符串的形式进行数字的输入输出。在

23

软件设计报告 10005808 方轶琦

系统内部进行转换前,利用ASCII码将字符串再转换为相应的数字进行处理。

(2)、进制的转换。系统中,首先将用户输入的任意进制的数统一转换为十进制。然后再将得到的十进制数转换为其他进制最后输出。

(3).转化成十进制时可以先得到用户输入的字符串的长度,在知道输入是什么进制数的前提下就可以将不同位上的数乘以进制的相应幂次最后求和就可以十进制数;由十进制转换成任意进制时可以使用短除法,不断相除取余数直到商为零为止,得到的字符串在翻转后即使得到的任意进制数对应的字符串。

(4).转换输出时,是将该数据的所有进制转换结果进行输出。 进制转换系统是采用C#界面环境编程制作的。 系统界面如图3.5-1所示。

图3.5- 1 进制转换系统界面

界面中用户可以打开下拉菜单选择要输入的进制,选定后,选择的进制输入文本框会变白,用户可以输入要转换的数,按下“转换”按钮后,其他进制后面的文本框就会显示转换后的数。按下“结束”按钮可以退出系统。

整个程序可分为四个模块,分别是:数据输入模块,数据转换为十进制模块,十进制转换为其他进制模块,数据输出模块。程序流程框图如图3.5-2所示。

开始用户选择要输入的进制数据读入转换为十进制十进制转换其他进制数据输出结束 图3.5- 2程序流程框图

3.5.3逻辑功能程序 具体程序和注释如下:

#include "stdio.h" #include void bishow(int m); void main() { char x,w; char c[10]; int i=0,err=0,quitflag=0; int num=0; do{ system("cls"); printf("\t-------- \n"); printf("\t 欢迎数制转换系统 \n");

24

软件设计报告 10005808 方轶琦

printf("\t-------- \n"); printf("\t \n"); printf("\t-------- \n"); printf("\t| 1 二进制 |\n"); printf("\t| 2 八进制 |\n"); printf("\t| 3 十进制 |\n"); printf("\t| 4 十六进制 |\n"); printf("\t| 0 退出 |\n"); printf("\t-------- \n"); printf("\n\t请选择: "); do{ err=0; scanf("%c",&x);//输入选项

getchar(); if(x>'4'||x

{ err=1; printf("\n输入错误,请重新输入\n"); } }while(err); switch(x) { case '1': //输入二进制

do{

err=0;i=0;num=0;

printf("\n\t请输入二进制数:"); scanf("%s",c);

getchar();

while(c[i]!='\0') //‘\0’字符结尾

{ if(c[i]!='1' && c[i]!='0') err=1;//若输入数字不为1或0则输入错误

i++;

}

if(err) printf("\n输入数值错误,不是二进制数!\n"); } while(err); // err为1重复上面,否则继续

i=0; while(c[i]!='\0')//二进制转换为十进制

{

num=num*2;

if(c[i]=='1') num=num+1;

i++; }

25

软件设计报告 10005808 方轶琦

printf("\n\t二进制数 %s 转换为其他进制:\n\n",c);

printf("\t********************************************\n");

printf("\t八进制: %o\n",num);//输出八进制

printf("\t十进制: %d\n",num);//输出十进制

printf("\t十六进制: %x\n",num);//输出十六进制

printf("\t********************************************\n");

printf("是否继续?(任意键继续N键退出)"); scanf("%c",&w); getchar(); if(w=='N'||w=='n') quitflag=1;

break;

case '2': //输入八进制

do{

err=0;i=0;num=0;

printf("\n\t请输入八进制数:");

scanf("%s",c);

getchar();

while(c[i]!='\0')

{

if(c[i]>'7' || c[i]

i++;

}

if(err) printf("\n输入数值错误,不是八进制数!\n");

} while(err);

i=0;

while(c[i]!='\0')

{

num=num*8;

num=num+c[i]-48;

i++;

}

printf("\n\t八进制数 %s 转换为其他进制: \n\n",c);

printf("\t********************************************\n");

bishow(num);

printf("\t十进制: %d\n",num);

printf("\t十六进制: %x\n",num);

printf("\t********************************************\n");

printf("是否继续?(任意键继续N键退出)"); scanf("%c",&w); getchar(); if(w=='N'||w=='n') quitflag=1;

break;

26

软件设计报告 10005808 方轶琦

case '3': //输入十进制

do{

err=0;i=0;num=0;

printf("\n\t请输入十进制数:");

scanf("%s",c);

getchar();

while(c[i]!='\0')

{

if(c[i]>'9' || c[i]

i++;

}

if(err) printf("\n输入数值错误,不是十进制数!\n");

} while(err);

i=0;

while(c[i]!='\0')

{

num=num*10;

num=num+c[i]-48;

i++;

}

printf("\n\t十进制数 %s 转换为其他进制:\n\n",c);

printf("\t********************************************\n"); bishow(num);

printf("\t八进制: %o\n",num);

printf("\t十六进制: %x\n",num);

printf("\t********************************************\n");

printf("是否继续?(任意键继续N键退出)"); scanf("%c",&w); getchar(); if(w=='N'||w=='n') quitflag=1;

break;

case '4': //输入十六进制

do{

err=0;i=0;num=0;

printf("\n\t请输入十六进制数:");

scanf("%s",c);

getchar();

while(c[i]!='\0')

{

if(c[i]='0') err=0;//若输入数据为非数字符号,则错误

27

软件设计报告 10005808 方轶琦

else if(c[i]>='a'&&c[i]

else if(c[i]>='A'&&c[i]

else err=1;

i++;

}

if(err) printf("\n输入数值错误,不是十六进制数!\n");

} while(err);

i=0;

while(c[i]!='\0')

{

num=num*16;

if('0'

if('a'

if('A'

i++;

}

printf("\n\t十六进制数 %s 转换为其他进制:\n\n",c);

printf("\t********************************************\n"); bishow(num);

printf("\t八进制: %o\n",num);

printf("\t十进制: %d\n",num);

printf("\t********************************************\n");

printf("是否继续?(任意键继续N键退出)"); scanf("%c",&w); getchar(); if(w=='N'||w=='n') quitflag=1;

break; case '0':

quitflag=1;

break;

}

}while(!quitflag);

}

void bishow(int m) //转换成二进制数 { int b[20];

int i=0;

28

软件设计报告 10005808 方轶琦

while(m) { b[i]=m%2; m=m/2; i++; } i--; printf("\t二进制: "); if(m==0) printf("%d",0); while(i>=0) { printf("%d",b[i--]); //输出二进制数 } printf("\n"); } 3.5.4结果及完善方向 程序运行结果:

图3.5- 3 进制转换系统界面运行情况

系统的完善

本系统能够较好的完成

二、

八、

十、十六进制数之间的相互转换,并且对可能出现的异常情况进行了处理。例如,当用户选择输入二进制,用户就无法在其

29

软件设计报告 10005808 方轶琦

他进制的文本框内输入数据。还有,如果用户要键入非该进制内的字符,用户的键入将无效,非法字符将无法输入到文本框内。这样的设计能方便用户操作。

系统还有一些地方有待完善,比如,用户输入的字符串的最大长度需要进行一定的限制等等。

3.6 分数统计

3.6.1设计题目及要求

设计题目:学生成绩核算系统的设计与实现 要求:(1)、按班级按课程从文件中读入相应的平时成绩、期中考试成绩和期末考试成绩。

(2)、三个成绩对总评成绩的百分比被定义为常数,各占总成绩的30%、30%和40%。

(3)、计算每位学生的总评成绩。 (4)、计算该班级本课程的总平均成绩。 (5)、计算处于优、良、中、及格、不及格的学生人数以及占总人数的百分比。其中100-90为优,89-80为良,79-70为中,69-60为及格,60分以下为不及格。

(6)、按要求输出成绩在优、良、中、及格、不及格各区间的学生学号、成绩。

3.6.2设计思想及程序流程框图 设计思想:

1.建立文本文件 note.dat,第一行为学生的总人数,其后为每个学生的成绩,每个学生的信息占一行,格式为:

学号(9位)平时成绩

期中考试成绩

期末考试成绩 例如: 15 B10040801

88

75.5

66

B10040802

91

79.5

76 B10040803

85

75

77

B10040804

79

82

80.5 B10040805

94

83.5

81.5

B10040806

80

69

68 B10040807

82

77

71

B10040808

77

57

58 B10040809

91

88

86

B10040810

96

89

90 B10040811

70

45.5

50

B10040812

74

65

66 B10040813

81

71

76

B10040814

83

75

77 B10040815

85

78

79

2.数据结构(用C++实现)

本题中共设计了两个类:学生(Student)和学生成绩(marks) (1)基类学生(Student),定义如下:

cla Student //基类学生

30

软件设计报告 10005808 方轶琦

{ private: //私有成员:

char stu_no[10]; //学号(题目中用到的) char stu_name[10]; //姓名(可拓展的) char stu_zhy[20]; //专业(可拓展的) public: //公有成员:

Student() //构造函数

{

strcpy(stu_no,"NULL");

strcpy(stu_name,"NULL");

strcpy(stu_zhy,"NULL");

}

~Student(){} //析构函数

void setno(char no[]) //设置学号

{strcpy(stu_no,no);}

void setname(char name[]) //设置姓名

{strcpy(stu_name,name);}

void setzhy(char zhy[]) //设置专业

{strcpy(stu_zhy,zhy);}

char *getno() //取学号

{return stu_no;}

char *getname() //取姓名

{return stu_name;}

char *getzhy() //取专业

{return stu_zhy;} };

(2)基类学生(Student)的派生类学生成绩(marks),定义如下: cla marks:public Student //派生类学生成绩 { protected: //保护成员:

float sco1; //平时成绩

float sco2; //期中成绩

float sco3; //期末成绩

float avg; //总评成绩

char dengj; //等级 public: //公有成员:

void setsco1(float s1){sco1=s1;} //设置平时成绩

void setsco2(float s2){sco2=s2;} //设置期中成绩

void setsco3(float s3){sco3=s3;} //设置期末成绩

float getsco1(){return sco1;} //取平时成绩

float getsco2(){return sco2;} //取期中成绩

float getsco3(){return sco3;} //取期末成绩

float getavg() {return avg;} //取总评成绩

char getdengj(){return dengj;} //取等级

31

软件设计报告 10005808 方轶琦

void Computavg(); //计算总评成绩 void GetDJ(); //计算等级 }mark[100]; 3.从文件中读入相应的平时成绩、期中考试成绩和期末考试成绩时,用C++中的流实现。

4.每次计算出的结果可在屏幕输出,并把每个学生的总评成绩输入到新文件out.dat文件中,格式为:

学生学号(9位)

总评成绩

成绩等级 例如: B07040801

88

B

为查询方便,可把总评成绩所处等级(优、良、中、及格、不及格)同时保存在文件out.dat中,分别用字母A、B、C、D、E表示。

5.设计方法:本系统采用自顶向下,逐步细化的方法,将整个系统细化为5个模块:读入文件,计算成绩模块,保存文件模块,计算并输出等级分布模块以及退出模块。根据这个思想,主程序的流程图如3.6-1图所示:

开始显示菜单键盘输入选项读入文件否计算成绩保存文件计算输出等级分布退出系统是否退出系统?是结束图3.7- 1主程序流程图

3.6.3逻辑功能程序 具体程序及注释如下:

#include #include #define N 100 struct student { char number[10];

char psgra[5];

32

软件设计报告 10005808 方轶琦

char qzgra[5]; char qmgra[5];

};

int information() {

FILE* fp;

int i;

struct student std[15]=

{{"B10040801", "88", "75.5", "66" },

{"B10040802" ,"91", "79.5","76"},

{"B10040803","85","75","77" },

{"B10040804","79","82","80.5"},

{"B10040805","94","83.5","81.5"},

{"B10040806" ,"80","69","68"},

{"B10040807","82","77","71"} ,

{"B10040808","77","57","58"},

{"B10040809","91","88","86"} ,

{"B10040810","96", "89","90"},

{"B10040811","70","45.5","50"} ,

{"B10040812","74","65","66"},

{"B10040813","81","71","76"},

{"B10040814","83","75","77"},

{"B10040815","85","78","79" }};

if((fp=fopen("note.dat","w"))==NULL) {

printf("文件打开错误!\n");

exit(0); }

fprintf(fp," 学号

平时成绩

期中成绩

期末成绩\n

15\n");

for(i=0;i

fclose(fp);

return 0;

33

软件设计报告 10005808 方轶琦

}

int read(struct student st[15])

//读取文件的函数; { FILE*fp1;

struct student s; int size; int i=0; if((fp1=fopen("note.dat","r"))==NULL)

//打开information文件; {

printf(" 文件打开错误!\n");

exit(0); }

size=sizeof(struct student); fseek(fp1,0L,SEEK_SET); fread(&s,size,1,fp1);

//读取一个字节的fp1指针

fread(&s,size,1,fp1); for(i=0;i

{

fscanf(fp1,"%s", st[i].number);

fscanf(fp1,"%s", st[i].psgra);

fscanf(fp1,"%s", st[i].qzgra);

fscanf(fp1,"%s", st[i].qmgra);

}

fclose(fp1);

return 0;

}

void output(double n[20],char a[20],struct student st[15],char ch) {

int j=0;

int i;

printf("得等级%c的学生及其分数:\n",ch);

for(i=0;i

34

软件设计报告 10005808 方轶琦

{

if(a[i]==ch)

{

printf("%-8s %8.1lf %8c \n",st[i].number,n[i],a[i]);

//判断后循环输出满足相应条件的学生的学号、分数及其等级;

j++;

}

} printf("得%c的人数为:%d人\n",ch,j); printf("得%c的比例为:%.1lf%%\n",ch,100*j/15.0);

printf("\n\n"); }

char level(double //判断得ABCDE的条件; { if(n>=0&&n

return 'E';

else

if(n>=60&&n

return 'D';

else

if (n>=70&&n

return 'C';

else

if(n>=80&&n

return 'B';

else

return 'A'; }

35

n)

软件设计报告 10005808 方轶琦

int main() { FILE*fp1; struct student st[15]; int i=0;double n[N];char a[N];double d=0.0;

information();

read(st);

if((fp1=fopen("out.dat","w"))==NULL) {

printf(" File open error!\n");

exit(0); }

fprintf(fp1," 学号

总评成绩

等级\n

15\n");

for(i=0;i

{

n[i]=0.3*atof(st[i].psgra)+0.3*atof(st[i].qzgra)+0.4*atof(st[i].qzgra);

//按照0.3 0.3 0.4计算成绩;

a[i]=level(n[i]);

//输出等级给a[i];

fprintf(fp1," %-8s %8.1lf %8c \n",st[i].number,n[i],a[i]);

d=d+n[i];

//求总成绩;

} fclose(fp1);

while(1) {

printf("\t\t\t\t

南京邮电大学\n\n\n");

printf("------------------");

printf("\t\t\t\t请选择服务类型:\n\t\t\t\t1:输出得A的学生。\n\t\t\t\t2:输出得B的学生。\n\t\t\t\t3:输出得C的学生。\n");

printf("\t\t\t\t4:输出得D的学生。\n\t\t\t\t5:输出得E的学生。\n\t\t\t\t6:输出总平均成绩。\n\t\t\t\t7:输出学生相应的等级。\n");

printf("\t\t\t\t8:输出原始成绩。\n\t\t\t\t0:退出\n");

printf("------------------");

scanf("%d",&i);

printf("\n\n\n");

36

软件设计报告 10005808 方轶琦

if(i==0)

break;

else

switch(i)

{

case 1:

//进入得A学生的判断;

{

printf("A:优

B:良

C:中

D:及格

E:不及格\n ");

output( n,a,st,'A');

system("pause");

暂停以清屏;

system("cls");

清屏;

}

break;

case 2:

进入得B学生的判断;

{

printf("A:优

B:良

C:中

D:及格

E:不及格\n ");

output( n,a,st,'B');

system("pause");

system("cls");

}

break;

case 3 //进入得C学生的判断;

{

printf("A:优

B:良

C:中

D:及格

E:不及格\n ");

output( n,a,st,'C');

system("pause");

system("cls");

}

break;

case //进入得D学生的判断;

{

printf("A:优

B:良

C:中

D:及格

E:不及格\n ");

output( n,a,st,'D');

system("pause");

system("cls");

}

break;

case 37

//////

: 4: 5:

软件设计报告 10005808 方轶琦

//进入得A学生的判断;

{

printf("A:优

B:良

C:中

D:及格

E:不及格\n ");

output( n,a,st,'E');

system("pause");

system("cls");

}

break;

case 6:printf("总平均成绩为:%.2lf\n\n\n",d/15);

//总成绩d/15求平均成绩;

system("pause");

system("cls");

break;

case 7:{

//输出学生的成绩及其等级;

printf(" 成绩及相应等级信息\n");

printf("

学号

成绩

等级\n");

for(i=0;i

//15个学生的信息全部输出;

printf(" %-8s %8.1lf %8c \n",st[i].number,n[i],a[i]);

system("pause");

system("cls");

}

break;

case 8:{

//输出15个学生的所有信息;

printf(" 学号

平时成绩

期中成绩

期末成绩\n");

printf(" 15\n");

for(i=0;i

{

printf(" %-8s %8s %8s ",st[i].number,st[i].psgra,st[i].qzgra);

printf("%10s\n",st[i].qmgra);

}

system("pause");

system("cls");

}

break;

default: printf("输入错误,请重新输入。\n");

break;

}

38

软件设计报告 10005808 方轶琦

printf("\n");

}

}3.6.4结果及完善方向

(一).程序运行结果如下:

1、菜单选择界面如图3.6-2所示。

(三).系统有待完善的方向

该系统还有一些细节有待改进完善。如输出5个等级区间学生学号和成绩时,分别都进行了一个循环,共进行了5个循环,这个算法的时间效率较低。可以改进算法,使其进行一次循环便可输出5个等级的情况。

3.7 模拟电信计费系统的设计与实现(B2)

3.7.1设计题目及要求

设计题目:模拟电信计费系统的设计与实现 要求:(1)、计费功能。根据存放在源数据文件中的通话记录和长途费率文件对每一条通话记录计算其通话费用,并将结果保存在费用文件中。其中:通话费的计算方法如下:

通话费=长途电话费+本地电话费

长途电话费=费率(元/分钟)×通话时长(分钟) (通话时长不满1分钟的按1分钟计算)

39

软件设计报告 10005808 方轶琦

本地电话费为:3分钟以内0.5元,以后每3分钟递增0.2元。 (2)、话费查询。输入一个电话号码,从费用文件中统计该电话号码的所有本地话费、长途话费,并从用户文件中查找其用户名,最后在屏幕上显示:

用户名 电话号码 本地话费 长途话费 话费总计 (3)、话单查询。输入一个电话号码,查询并在屏幕显示该用户的所话通话记录,格式为:

用户名 主叫电话号码 被叫电话号码 通话时长 3.7.2设计思想及程序流程框图

1.本系统的输入输出文件 本系统的输入文件有三个: (1) 源数据文件(hd.dat) 存放:主叫区号

主叫电话号码

被叫区号 被叫电话号码

通话时长(秒) 每次通话作为一条记录,占源数据文件的一行。每条记录中各数据之间以空格间隔,例如:025 83491234 010 62320983 90 每个电话号码可以有多次通话记录。 如果主、被叫区号相同,则通话记录为本地通话记录;否则为长途通话记录。 (2) 长话费率文件(fl.dat) 存放:区号 费率

例如:010 1.20 表示从本地打往区号为010的地区每分钟收费1.20元。 (3) 用户文件(yh.dat)

存放: 电话号码

用户姓名 例如: 83491234 张明

本系统的输出文件有一个: 费用文件(fy.dat)

存放:主叫电话号码

通话类型

话费金额 其中,通话类型表示本次通话是长途还是本地。 2.系统输入数据

hd.dat—有20条通话记录,分别是:

fl.dat

有4条记录

025 83491234 025 85319971

70

010

1.20

025 84927038 010 62110045 236

020

1.20

025 87216340 025 84521009

310

021

0.80 025 83491234 0571 82199516 100

0571 1.00 025 58120321 021 81094532 50

025 83491234 025 85319971

80

025 84927038 025 83491234

115

yh.dat

有5条记录 025 58120321 025 87216340

47

83491234 张明 025 87216340 010 62110045 93

84927038 李小红 025 83491234 010 62110045 792

87216340 王励 025 84927038 0571 82199516 931

83492200 赵强 025 83491234 025 85319971

580

58120321 杨冬 025 84927038 025 83491234

358

025 58120321 021 81094532 197 025 87216340 025 84521009

256

025 87216340 010 62110045 193

40

软件设计报告 10005808 方轶琦

025 83492200 025 84521009

320

025 83491234 025 85319971

270 025 84927038 025 83491234

231

025 83492200 025 84927038

72 3.数据结构(用C++实现)

本题共设计了三个类:话单(callist)、费用(charge)和用户(user),类的定义如下:

(1)、基类:话单类Callist #include #include #include #include #define N 100

struct callist

{

char zqnum[5];

char znum[20];

char bqnum[5];

char bnum[20];

char longti[10]; }cali[N]; struct charge

{

char bqnum[5];

char cha[5]; }

ch[N]; struct user {

char znum[20]; char name[15]; }

use[N]; struct huaf {

char znum[20];

int flag;

double huafei; }

41

hf[N];

int readuse () {

FILE* fp; int i=0;

char a[10];

strcpy(a,"yh.dat");

if((fp=fopen(a,"r"))==NULL) {

printf("文件打开错误!\n");

exit(0); }

while(!feof(fp)) {

fscanf(fp,"%s %s \n",use[i].znum,use[i].name);

i++;

}

fclose(fp); return i-- ; }

int readcharge() {

FILE* fp; int i=0;

if((fp=fopen("fl.dat","r"))==NULL)

费规则; {

printf(" File open error!\n");

exit(0); } while(!feof(fp))

42

软件设计报告 10005808 方轶琦

//将yh.dat写入数组a; //输出号码与名字;

//打开fl.dat通话计费

软件设计报告 10005808 方轶琦

{

fscanf(fp,"%s %s \n",ch[i].bqnum,ch[i].cha);

i++;

}

fclose(fp); return i--; }

int readcallist() {

FILE* fp; int i=0;

if((fp=fopen("hd.dat","r"))==NULL)

//打开通话记录表; {

printf(" 文件打开错误!\n");

exit(0); } while(!feof(fp)) {

fscanf(fp,"%s

%s

%s

%s

%s\n",cali[i].zqnum,cali[i].znum,cali[i].bqnum,cali[i].bnum,cali[i].longti);

i++;

}

fclose(fp); return i--; }

int Billing()

//计费函数; {

FILE* fp;

int i;int j;int m;int l;

43

软件设计报告 10005808 方轶琦

double bd=0.0;

//通话时间初始化0;

j=readcallist();

m=readcharge();

for(i=0;i

{

strcpy(hf[i].znum,cali[i].znum);

hf[i].huafei=0.0;

//初始化话费为0.0元;

bd=atof(cali[i].longti)/60.0;

//计算通话时间(n个一分钟);

if(!strcmp(cali[i].bqnum,cali[i].zqnum))

{

hf[i].flag=0;

if(bd

//本地话费:3分钟以内0.3元,以后每1分钟递增0.2元;

hf[i].huafei=0.3;

else

if(bd==floor(bd))

hf[i].huafei=0.3+0.2*(bd-3);

else

hf[i].huafei=0.3+0.2*(floor(bd)-2);

}

else

{

hf[i].flag=1;

//长途话费计算;

for(l=0;l

{

if(!strcmp(cali[i].bqnum,ch[l].bqnum))

if(bd==floor(bd))

hf[i].huafei=atof(ch[l].cha)*bd;

else

hf[i].huafei=atof(ch[l].cha)*(floor(bd)+1);

}

}

}

if((fp=fopen("fy.dat","w"))==NULL)

//打开通话

44

软件设计报告 10005808 方轶琦

类型数据并向其写入数据; {

printf(" 文件打开错误!\n");

exit(0); }

for(i=0;i

{

fprintf(fp,"%s

%d

%.2lf\n",hf[i].znum,hf[i].flag,hf[i].huafei); //输出号码、长途以及本地话费;

} fclose(fp);

return i--; }

int query()

话费函数; {

char a[10];

char na[15];

int i;

int j;

int l;

double bd=0.0;

double ct=0.0;

j=Billing();

l=readuse ();

getchar();

printf("请输入要查询的号码\n");

gets(a);

for (i=0;i

{

if(!strcmp(hf[i].znum,a))

数据;

if(hf[i].flag==0)

bd=bd+hf[i].huafei;

else

45

//查询

//寻找与输入字符串(号码)相匹配的

软件设计报告 10005808 方轶琦

ct=ct+hf[i].huafei;

}

for (i=0;i

{

if(!strcmp(use[i].znum,a))

{

strcpy(na,use[i].name);

//条件成立则将use[i].name的内容复制到na中

break;

}

}

if(i==l)

printf("输用户不存在,请重新输入!\n");

else

printf("\t\t\t\t用户:%s\n\t\t\t\t号码:%s\n\t\t\t\t本地话费: %.2lf\n\t\t\t\t长途话费:%.2lf\n\t\t\t\t总话费: %.2lf\n",na,a,bd,ct,bd+ct);

return 0;

system("cls"); }

int billquery()

//话单查询函数; {

int i;

int j;

int l;

char na[15];

char a[10];

j=Billing();

l=readuse ();

getchar();

printf("请输入要查询的号码\n");

gets(a);

for (i=0;i

//比较输入号码与表单中号码是否有符合;

46

软件设计报告 10005808 方轶琦

{

if(!strcmp(use[i].znum,a))

{

strcpy(na,use[i].name);

break;

}

}

if(i==l)

printf("输用户不存在,请重新输入!\n");

else

for (i=0;i

if(!strcmp(hf[i].znum,a))

printf("\t\t\t\t用户:%s\n\t\t\t\t主叫号码:%s\n\t\t\t\t被叫电话号码:%s\n\t\t\t\t通话时长%s秒\n",na,cali[i].znum,cali[i].bnum,cali[i].longti);//输出话单;

return 0;

}

int main() { int i;

while(1) {

printf("\t\t\t\t

南京邮电大学\n\n\n");

printf("------------------");

printf("\t\t\t\t 请选择服务类型:\n\t\t\t\t 1:计费功能。\n\t\t\t\t 2:话费查询。\n\t\t\t\t 3:话单查询。\n\t\t\t\t 0:退出服务。\n");

printf("------------------");

scanf("%d",&i);

if(i==0)

//选择服务类型;

break;

else

{

47

软件设计报告 10005808 方轶琦

switch(i)

{

case 1:

Billing(); system("pause"); //计费选项;

break;

case 2:

query(); system("pause"); system("cls");

system("cls");

//话费查询选项;

break;

case 3:

billquery();system("pause"); //话单查询选项;

break;

default: printf("输入错误!\n");

}

}

printf("\n");

}

} 3.7.4结果及完善方向 (一).程序运行结果如下:

1、菜单选择

界面48

如图system("cls");

3.7-2所示。

推荐第10篇:软件设计模式课程教学设计

软件设计模式课程教学设计

软件设计模式课程教学设计

***

(*****************)

摘要:本文结合教学实践从学习需要分析、学习者分析、教学目标的设计、教学策略的设计、教学媒体的设计、教学过程的设计、教学设计的评价这六个方面对操作系统课程的教学模式进行了探讨

关键词:教学设计模式;双主模式;教学策略 中图分类号:G423.1

Instructional design for software design patterns Abstract:Combining with teaching practice from the learning needs analysis, learner analysis, design of teaching goal, teaching strategy design, design of teaching media, teaching proce design and evaluation of the six aspects of teaching design of operating system course teaching mode are discued in this paper Key words: teaching design pattern; Double main mode; Teaching strategies 0引言

近年来,以计算机技术为支撑的信息产业迅速发展,以及全球化浪潮所导致的信息技术人才新需求,对软件工程教育产生了巨大的影响。在软件产品、项目的研发过程中,不仅需要大量的初、中级人才来完成程序编写工作,更需要能完成软件设计的高级人才,目前总体来看,高校对该类人才的培养还远远未达到产业界的实际要求,没有真正把软件开发原理中的思维和内涵传授给学生,更多的时候还处在传授计算机软件开发技术层面,一定程度上制约了学生激发自己学习的潜力。

在信息技术的推动下,网络教育以其独特的魅力逐渐成为一种重要的教育手段。在网上开展教学,使得网络课程的设计和开发成为必然,软件设计模式与其结合,才能提高教学效果和教学效率,才能更充分的发挥网络多媒体技术的特点与优势,更有效的支持学生富有创造性的个性化学习。

设计模式作为软件设计研究领域新的热点,随着其理论成果的不断取得一级在软件与设计中所起到的举足轻重的作用,受到了软件产业界广泛一致认同,特别是设计模式更多地关注了程序开发基本原理,而并非一味追求所谓技术创新,通过学习这些基本原理,有助于摆脱定式思维的桎梏,加深对软件开发的理解,该课程的总体安排、教学方法、理论与实践课的内容以及安排甚至教材的选定都需要进一步的探索和研究。

软件设计模式课程教学设计

1 教学设计的一般模式

教学设计,就是为了达到一定的教学目的,对教什么和怎么教进行设计。教学设计的模式既是教学设计理论的具体化,也是教学设计实践活动的升华1。从教学设计的角度看,构成教学设计模式的基本要素主要有四个,即教学对象、教学目标、教学策略、教学评价。而组成教学设计模式的因素有以下几个方面:(1)学习需要分析,包括学习需求分析、学习者分析 (2)教学目标的设计;(3)教学策略的设计;(4)教学媒体的设计;(5)教学过程的设计;(6)教学设计的评价.

2软件设计模式课程教学设计探析

2.1 学习需要分析:

学习需要的核心是发现问题,而不是解决问题的方法。包括三方面的工作:一是通过调查研究,分析教学中是否存在要解决的问题;二是分析问题存在的性质,以判断教学系统设计是不是解决该问题的合适途径;三是分析现有资源和约束条件,以论证解决该问题的可能性。

2.1.1 学习需求分析

设计模式,它描述了在面向对象软件设计过程中针对特定问题的简洁而优雅的解决方案。所有结构良好的面向对象软件体系架构中都包含了许多设计模式,特别是在J2EE的架构中使用了大量的设计模式,使系统架构精巧,简洁和易于理解,同时也给我们提供了学习典范。与之同时设计模式被认为是的软件复用的目标2。

本课程主要介绍软件复用基本概念,设计模式的原则,典型的GOF的设计模式,并列举的大量的可运行代码,结合实例使课程生动。通过讲授,使学生理解设计模式的概念、作用以及在软件开发中的应用,掌握设计模式使用原则。同时通过使用复用技术,改造代码,从而使用合适的设计模式。

2.1.2学习者分析:

每个学习者都有各自不同的先天素质和后天通过学习得到的素质,这就造成了学习者与学习者之间学习现状和学习目标的不同。对学习者进行分析就是要弄

软件设计模式课程教学设计

清楚他们具有什么样的先天素质、已习得哪些后天的能力及学习需要是什么,因此在对学习者进行分析时就包括对其一般个性心理特征进行分析、对其学习风格进行分析、对其已习得的能力的分析和学习需要进行分析四个方面。

要使分析结果客观真实,相应的调查问卷的设计是关键,笔者在实践工作中设计并采用了“一般个性心理特征调查问卷”、“学习风格分析调查问卷”、“习得的能力调查问卷”等来进行分析;根据设计的调查问卷首先对学生进行分析,为制定教学策略方案寻找相应的依据。 2.2 教学目标的设计:

通过这门课程的学习,为计算机科学与技术专业学生,传授软件设计与方法的基础知识,培养科学思维和软件开发的基本能力。了解软件设计一般过程和掌握软件设计的原则,加强学生的面向对象设计开发思想、理解设计模式的概念、掌握常用的设计模式的使用方法,提高学生的软件系统架构设计能力。树立学生正确的软件设计思想,基本具备创建可维护的、灵活的和清晰的应用程序的能力。

我们对学习目标的描述应力求做到精确化,避免传统描述中存在的模糊性;我在进行相应目标描述时,采用了学习结果的分类方法,对每一部分的教学目标的成分进行分析时,都分别从学习者可以习得的智慧技能、言语信息技能、认知策略、动作技能和态度情感等五个大的方面去进行分析;在具体描述时对对象、行为、条件和标准四方面进行描述,这样就基本上做到了对教学目标描述的精确化,为后面的教学评价提出了具体的标准。

进行本课程学习的学生,也有基础较好,其中也有一部分学生需要系统扎实的学习理论知识,以便于进一步深造,同时也注重实践活动;另一部分学生则面临将走上工作岗位的压力,根据社会对人才的需要要求提高理论知识和应用能力 ,多学习一些基本技能,提高操作能力;对于学习的目的比较明确,希望通过学习提高自己实际的应用能力.即将走向工作岗位的同学具有较强的自学能力,希望在学习上改变过去那种死记硬背的作法 ,多理论联系实际、所学知识能对今后实际应用工作有较强的指导作用.即学以致用,而不是纯粹的理论学习.我认为,在教学过程中,应该根据不同班级,采取不同的策略,对于基础较好的学生,使学生在系统掌握基本理论的基础上,提高实际应用能力.对于即将走上工作岗位的学生,侧重于以学生为中心的教学模式,以学生在掌握基本理论、基本分析方法的基础上,注重实际分析问题、解决问题能力的培养. 对所有学生都应注重实际学习效果.对每一堂课的教学活动都应该具有实效,能解决学习上碰到的问题.

软件设计模式课程教学设计

2.3 教学策略的设计

教学策略的设计,是有效地解决 “如何教”、“如何学”的问题.只有采取了相应的教学策略,才能完成预期的教学目标.在现代教学设计研究领域,已形成两大流派:一是以“教”为中心的教学设计理论;二是以 “学”为中心的教学设计理论.以 “教”为中心的教学设计理论的研究重点放在将知识和技能加以分解,使之符合一定的加工顺序,以及以什么样的媒体形式呈现才会有利于信息加工等方面.这种教学设计只关注知识的传递,教师被看作是知识的主要来源.

针对以上情况的分析,我认为应该从教学形式、教学方法、信息呈现方式和程序四个方面进行了规划设计;在教学形式上,主要采取集体教学与小组合作学习相结合的方式,也鼓励学习者根据自身情况进行些个别化学习;在教学方法上,采用了讲授法、讨论法、演示法、设问法等多种方法;在信息的传递方式上,采用了传统与现代媒体来呈现信息的方式;课程教学的基本程序是:问题——相关理论——实践——评价。 2.4 教学媒体的设计

学生获取知识不再是单纯从书本上、教师的课堂讲解中,而是已经可以立体化,全方位的从学习环境中取得.学习环境是学习资源和人际关系的组合.学习资源包括学习材料、帮助学习者学习的认知工具、学习空间等等.我们提供了便于自学的文字材料、电子教案及多媒体课件,从媒体的有机组合上来实现教学过程的优化.便于学生利用计算机网络进行远距离交互式学习.教师不再是学习材料的主要来源.教师通过人际交往来影响和引导学生管理自己的学习活动,并且应以学生的身份参与到学生的学习活动中去.教师不再是个体学习的辅导者,而是群体学习的参与者。针对以上情况,我认为现行的教学模式,从网站下载课件和源码的方式固化,不方便分享,随着社会化媒体的兴起,我认为应该充分利用现有资源对教学媒体的资源进行扩充,比如,在现有条件下部署一个FTP,供校内学生进行资源共享,可上传和下载,对于校外学生,则应建立具有分享属性的网盘文件来共享文件,比如百度网盘、金山快盘等都是非常不错的配比。 2.5 教学过程的设计

软件设计模式的教学在精心备课、内容求新的基础上,采用启发式教学的方法,力求教学质量的全面提高.在教学中,根据现有可参考设计思想做如下教学策略3:

软件设计模式课程教学设计

2.5.1 告诉学习者学习目标、学习重点、难点.

教学开始时,明确告诉学习者学习目标 ,并使其了解当目标达到后,将学会什么,从而激发学习者对学习的期望.这不仅能提高学习动机 ,而且能起到“先行组织者”的作用.告诉学习者学习重点、难点,引起注意.以唤起和控制学习者注意力.

2.5.2 新课导人.

在学习新内容前,指出所需先决知识和技能,提出相关问题,以此刺激回忆起学过的有关知识和技能.还应使学习者充分利用原有的认知。

2.5.3 课堂教学.

课堂教学采用了讲解、提问、小组活动、讨论相结合的形式.在教学中采取的策略是先进行教师讲解,通过ppt、动画、现场操作方式,把教学涉及的新信息、新内容较快地系统地向较多的学生传输.但如果仅是教师讲解这一种教学形式,教师就不能及时获得学生的反馈信息.为改变这一状况,在教学过程中,穿插了课堂提问及时了解学生的情况,要按学生的反应做出必要的说明和进一步的提问. 根据学生的具体情况,进行不同的活动安排.对于普通专科班的教学安排是采取讲解、提问、小组讨论方式,还增加了专门 的讨论课、答疑课,使教学活动更加生动活泼.对于有工作压力的同学,重点放在教学辅导课上 ,根据学生的需求,选用以讨论式为主,穿插讲解、提问方式,能起到事半功倍 的效果 . 同时提供丰富的教学资源,如参考教材、网络资源、学习指导、电子教案等供学生在课外学习.

2.5.4 教学后记.

每堂课后,认真听取学生的意见和建议,根据课堂情况和教学效果,记录教学后记.及时对教案和教学方法进行研究和改进.这一反馈工作可以使下一轮教学更加优化

2.5.5 加强实践教学注重提高学生的实践能力.

实验教学是培养学生实践能力的重要环节 ,精心设计实验,引导实验过程.对学生实验的指导特别注意调动学生的积极性 ,引导他们独立思考、独立

软件设计模式课程教学设计

完成 ;加强实验过程与结果的监督.提高实验教学质量.机房实验室是学生创新能力和动手的实践场所 ,通过实验培养学生创新能力和实践能力.改变传统的实验教学模式,拓宽实验教学内容.按照实验教学 “三步骤”来提高学生技能.这三步是:课程实验实行 “讲解扫清障碍、指导落实过程、考核强化结果”.实验前讲解实验内容、过程和要求,补充必要的知识 ;在实验过程中检查学生完成规定的实验项目,督促学生实际动手,并指对结果进行分析;实验考核以过程考核为主,综合考察学生试验的态度、试验技能、试验完成情况、试验报告质量等.增设设计型实验:这类实验以项目形式提出实验要求和具体实验结果,要求学生通过查资料或自学方式结合所学知识,来完成实验项目.旨在培养学生的综合应用能力.

2.6教学设计的评价

教学评价主要包括两大部分,一是传统的总结性评价,二是需要在教学过程中不断进行的形成性评价4;总结性评价一方面是对学习者的学习结果进行检测,另一方面也可发现一些教学方面的问题,从而在下一届的教学中予以改进;形成性评价是在教学的过程中为使教学效果更好而不断进行的评价,它是教师为使学习者尽可能在教学过程中学得更好而需不断进行的工作之一;从某种意义上讲,形成性评价比总结性评价更重要,因此我认为在教学过程中特别注意形成性评价方面的工作,具体针对“教学设计概述”、“学习者分析”、“学习内容分析”、“教学目标的阐明”、“教学策略的制定”、“教学实践活动”等几个教学环节进行了形成性评价,诊断出现的问题,然后在下一阶段的教学中给予解决。

3:结论

总之,在软件设计模式这门课程的教学中,注意运用了教学设计的基本原理和操作程序,特别注意让学生理解现代科学教育思想(大教育观)、帮助学生掌握教学设计基础理论和基本技术、引导学生理论联系实际,依据现代教育思想、运用现代教学设计理论和技术对具体的教学活动进行设计,形成成果;在教学方法上注意讲授、组织小组讨论、指导见习和实践活动相结合,对相关问题进行分析、指导教学方案、学习方案及课件的设计、指导研究论文的撰写和课件的制作,从而使学生真正的有所收获和学习的成果。通过对这门课程的学习,学生们不仅学到相关的理论,而且更重要的是他们学会了思考、分析、研究相关教学问题,学会了对相关教学问题进行解决的方法——设计教学策略方案。学生变被动学习为主动学习,达到了原定的教学目标,他们的实践作品(上机作业等)也收集在

软件设计模式课程教学设计

一起,形成了成果。当然由于是集体教学,面对的是几十个学生,一套方案总是不能兼顾所有的学生,故还存在个别学生不能主动参与各项教学活动的情况,这将在今后的教学方案中设法解决。

软件设计模式课程教学设计

[参考文献]

[1] 罗伯特·加涅主编.教学设计原理.华东师范大学出版社,2000.[2] 《软件设计--从程序设计到体系结构》 Eric J.Braude著; 李仁发、王岢、任小西译,电子工业出版社。

[3] 李克东,谢幼如著.多媒体组合教学设计.科学出版社,1994.[4] 何克抗.教学设计理论的新发展.中国电化教育.1998.(10)、(11)、(12).[5] 罗伯特·加涅主编.学习的条件.华东师范大学出版社,2000.[6 《设计模式:可复用面向对象软件的基础》,机械工业出版社,Erich Gamma 等著,2000。

[7] 张文兰,李文光.对我国教学设计理论与实践的思考.2001年教育技术论坛论文集.

第11篇:多媒体教学

浅谈多媒体在交际英语教学中的应用

班级:应用英语08班

姓名:郭波

Tel:13519676890

E-mail:guozixu@yeah.net

摘要

随着信息科学技术的发展,多媒体技术越来越广泛地应用于教育教学领域。多媒体教学策略使英语教学焕发了新的生机与活力。声情并茂的多媒体让学生如临其境,浮想联翩,给了学生较大的思维空间;让学生在浩如烟海的知识海洋中学会选择,在绘声绘影的虚拟世界展开自己想象的翅膀,在自由互动的平台上展示自己、懂得评价,能够更好购建起自身的知识体系。

关键词: 多媒体

优化

交际英语

层次

教学素材

兴趣

随着科技的进步,多媒体已成为当今教学领域的热点。多媒体教学是一种现代的教学手段,它是利用文字、实物、图像、声音等多种媒体向学生传递信息,而多媒体教学法则是以各种电教媒体如:计算机、电视、录像、投影、幻灯等为标志,以传统的教学媒体如:黑板、挂图、实验、模型等为基础的多种媒体有机结合的教学方法,作为一名当代化学教师如果能够熟悉现代化教学手段的理论和操作机能,并能依据教学大纲的要求,从学生的实际出发合理选择现代化教学媒体,且使之与传统的教学媒体合理结合,就能够极大地丰富课堂教学,促进学生对知识的理解和记忆,培养学生的各种能力,提高学生的素质,大大提高教学效果。

一、多媒体可以最大程度优化外语课堂教学的层次性

交际英语课堂教学是培养学生用英语进行交际的最基本活动形式。它的质量决定了整个教学的质量。随着实践经验的积累,我觉得利用多媒体优化外语课堂教学的层次性提高教学质量是一条很好的途径。 我们经常在上完一堂课或听完一堂课时,尽管课堂很投入,气氛也很热烈,但总有一种杂乱的感觉。这主要是因为教学过程中结构层次不清晰,导致训练不到位,教者不清,学者不明,以致于费时低效。我认为交际英语课堂教学的层次一般可分为三个:理解性层次,操练巩固层次和交际性层次。

1、理解性层次 主要指教师利用实物,图片,幻灯片及多媒体等教学手段创设情景,让学生通过多种感官感知和观察英语交际的特点,在情景中理解,识记语音,词汇,语法知识和进行机械性句型操练。理解性层次的表现形式为引入,讲解,示范,模仿。在引入和讲解时,可让学生静听,增加语言输入;教师示范后,学生跟读与朗读,强化训练。如学习“I like„”: 教师可利用幻灯片呈现图片,引起学生的注意,教师指导如下进行: A: film

B: I like films very much.

A: bananas.

B: I like bananas very much.

A: apples

B: I like apples very much.

2、操练巩固层次

在这一层次,师生在活动中的角色分别为:教师是讲解者和师范者,学生是观众和模仿者。由于涉及到较多的机械操练,教师一定要让学生明确操练的目的,学生只有形成了操练的内部动力,才会认真地对待。而且学生还应在多媒体创设的情景中通过有意义的听,说,读,写技能训练,巩固所学知识,形成言语技能。众所周知,学习英语要不断积累,巩固和完善英语知识结构。而运用多媒体课件可以呈现事物现象的本质属性,美妙的自然风光,奇特的自然现象,事物的本质特征,事件过程的演绎……还可以运用各种技巧,如对比、叠合、拖移、夸张,以及将事物变大为小,变小为大,变快为慢,变慢为快等等,使学生对事物的本质,事件的发展有直观的感受,清晰的逻辑,深刻的印象。因此,在这一层次,多媒体为开展听,说,读,写技能训练提供一个广阔的智力背景。

3、交际性层次 交际英语教学的最终目的是培养学生的交际能力,如果英语知识只停留在记忆阶段而不能对其灵活运用则变成僵化的知识,由于得不到灵活运用,知识也得不到巩固。因此,运用知识进行交际是外语教学的主要环节,只有重视和加强这一环节教学,才能真正实现外语教学的最终目的。而通过多媒体进行的教学,可以使学生的主体地位得到充分体现,学生有较大的自由度,语言材料丰富,活动内容不是围绕某个特定的语言项目,学生可自由选择感兴趣的语言环境来表达自己的意思;但由于灵活运用知识进行交际是和创造能力紧密紧密相联的,所以运用多媒体培养学生的想象能力和创造能力是十分重要的。

二、多媒体能提供大量的教学素材

多媒体辅助教学的优点: 首先是大容量,集成性和快速高效,他可以把大量的图文信息,音像信息集中再一起并在有限的时间里呈现出来,从而极大地增大了学生信息输入量。其次是趣味性强。电脑可把静态变成动态,抽象变成具体,把宏观的东西微观化或把微观的东西宏观化,化枯燥为生动,从而优化了学生的认知方式激发了学习兴趣,提高了课堂效率。多媒体在交际英语层次性教学中可以创设大量类似真实的生活情景。情景教学在交际英语层次性课堂教学中是一种重要的教学方法和手段,尤其是交际层次中,尽可能的创设类似真实的交际环境,使学生尽量在真实的交际活动中发展语言能力,提高英语素质,是在英语教学中实行素质教育实现交际法教学的关键。而多媒体可以很容易地做到这一点。例如,在阅读教学中,在理解层次里,结合生词创设情景,结合情景讲故事:在词汇教学中,单纯的生词学习是乏味的,在操练巩固层次上,创设接近学生生活的情景,拉近情景与学生距离,提供更多有助于扩大认知范围的信息,就能帮助学生尽快理解和记忆生词。 另外,在交际英语教学中,良好的非智力因素有利于学生潜在的语言习得能力的发挥,有利于英语顺利教学的进行,有利于提高教学质量。所以,教师在教学中注意激发每个学生的学习兴趣,唤起学生的求知欲望,充分发挥学生的内在潜能,这是英语教学取得成功的重要因素。而这恰恰是多媒体的优势所在。

总之,利用多媒体使杂乱的课堂明了化,让语言点在一个实实在在的情景载体中,变的有血有肉,灵活有趣,将有助于培养学生形象思维,看图说话和写作能力,而且多媒体的运用还有利于突出重点突破难点,利于培养学生的英语素质,从而提高学生的英语交际能力。

参考文献

[1]《高等学校英语专业英语教学大纲》中华人民共和国教育部制订

[2]教育部高等教育司.大学英语课程教学要求[M].上海:上海外语教育出版社,2004.[3]张建萍.多媒体技术在英语教学中的定位问题探讨[J].科技资讯,2007.[4]陈正松.试谈多媒体在英语语篇教学中的运用[M].北京:人民教育出版社,2000.

第12篇:多媒体教学

多媒体能为教学创设一个生动有趣的教学情境,化无声为有声,化静为动,激发了学生学习的兴趣,提高了学生的学习积极性和主动性。多媒体教学情境还可以大大减轻学生认识的难度,变难为易,学生学习的积极性也调动起来了。

第13篇:多媒体教学

浅谈初中语文信息化教学

【摘要】在初中语文教学中,科学利用多媒体技术,以全新的教学器具以及教学手段辅助教学,将学生学习的主动性与积极性有效地调动起来,可以改善传统语文教学的枯燥乏味,充分调动和激发学生的学习积极性,提高课堂效率,但要科学理性地在教学中使用信息技术。

【关键词】初中语文 多媒体教学 信息技术

信息技术的发展给教育带来了革命,现代信息技术成为基本的知识载体、教学媒介和互动交流的工具,它具有存储量大,画面丰富等特点以及人机交互的优越性,带来了语文教学活动、教学方法、教学观念等一系列的变革。

在我国有两种影响特别深远的教学过程结构模式,其一是赫尔巴特的“四段论”,即明了、联想、系统、方法。另一个则是凯洛夫的“五环节”,即把课堂结构分为“组织教学——复习旧课——讲授新课——巩固新课——布置作业”五个环节。 正如陶行知先生说的,“教学,是教学生学。”以上两种教学模式,都忽略了学生的主体作用,过于强调知识中心和教师中心,受到了当今人们的批判。而科技的发展为信息化下的语文提供了一些新的教学理念,多媒体技术在语文教学中发挥了巨大的作用。

一、信息技术为语文教师提供了更广阔的知识空间

中学语文是一门综合性极强的学科,很多学科的知识都涉及到语文,在学习语文的过程中同时也在学习其他的学科,语文学科本身在教学内容上的多样性、多元性的特点,加之教学方法的灵活性,使语文学科与信息技术教育的整合具有得天独厚的优势。语文教学就可以借助各种信息媒介提供的丰富的信息资源,把课本的知识向课外延伸,拓宽语文教学的空间。

《鲁提辖拳打镇关西》文章最精彩的部分就是描述鲁提辖三拳打死镇关西的场面,第一拳打在鼻子上,第二拳打在眼眶际眉梢处,第三拳太阳上正着。观看相关文章的视频远比在教室给学生讲解,让学生去想象那画面来得直观。看到一方恶霸被打的惨样,让我们有解恨的感觉。教师在备课时可以通过信息资源,查找相关视频以及课文的朗读等知识,利用各种途径和手段,扩大课堂教学容量,寓知识性、趣味性于一体。教师轻松的教,学生轻松的学,不仅增加了教师自己的知识储备,也能调动学生的学习兴趣。

- 1并且配上每种天气对应的云层变化的图片。每放出一种变化的天气时,可以给学生充分的时间去思考。这样一来既增加了课堂的容量,又给学生许多的学习、思考机会,还节省了许多板书的时间,极大地提高了课堂效率。

再如《福楼拜家的星期天》主要是介绍五个人物的出场来学习作者通过人物的肖像、语言、动作描写表现人物的性格特征的写作方式。如果课件展示时教师首先展示五人齐聚一室的画面,然后让五人齐聚一室的画面在最后再次出现。这样,学生从第一个画面中获得直观的感知,到最后一张画面中对人物各种特征精确的理解,学生认识也经历了由感性到理性的上升,这样,既考查并巩固了课堂所学,教学反馈的目的也水到渠成,同时各种描写方法又在画面的展示中得到了深化,教学效率也得到了提高。

四、计算机网络方便作文教学

学生在计算机上写作,教师可以较全面地了解学生在作文过程中的表现情况,师生间通过人机对话,互通信息,及时交流,解疑释惑;学生写就的文章,可及时上传到教师机里,师生在共同批改中交流得失,增进感情;课堂上未完成的习作,可保存下来,课下抽时间完成;未能在学校计算机房里批改完的文章,可通过计算机网络发送到教师家中的计算机里,这就为作文的批改提供了方便,也为师生间的交流搭起了平台。另外,学生可以通过建立“资料库”的形式,将平时的阅读资料和搜集到的写作素材归类保存;通过填写“学生写作自我预测表”、“个人写作评价成长记录卡”,对每一次的写作水平进行自主测评并作好登记,以便了解自己的写作成长过程。教师通过查看“学生写作定位评价表”、“学生写作成果展示台” 等学生个人写作成长电子档案,分析学生阶段性的写作水平及存在问题,有针对性地对学生进行指导,从而实现写作教学过程的电子智能化。

五、信息技术为学生提供了自主实践、自主探究的有效途径

《三峡》一课,教师设计在学生理解课文内容、练习有感情朗读课文的基础上,依据教材内容,在自己课下收集资料、现场查找网上资料,或以导游的身份,或以游人的身份,或以三峡人、作家、诗人等不同的身份,介绍三峡。这样既激发了学生的学习兴趣,又培养了学生多方面的语文学习能力。另外,这样的语文

- 3

第14篇:多媒体教学

课件与教学

近年来,随着社会的进步、计算机的普及和现代教育技术的发展,多媒体技术逐渐成为高校课堂教学中不可缺少的一部分,部分高校还将多媒体教室的使用率和多媒体课堂的占有率作为重要的教学水平评价指标之一。多媒体教学是以计算机多媒体课件为核心的教学方式.它集声音、图像、文字、动画于一体,通过人机交互作用完成各种教学任务,实现教学过程与教学目标的优化 作为一种先进的教学手段,多媒体的确具有其他媒体无法比拟的优越性,因此,多媒体教学对传统的教育观念、教学模式、教师角色等产生了深刻的影响。但是在实际应用过程中,出现了~ 些不顾高校课堂教学的特点,滥用多媒体课件的现象。本文分析高校中多媒体应用的利与弊,进而提出实现多媒体教学模式与传统教学模式完美结合的有效措施,以取得最佳的教学效果,提高教学质量。

一、多媒体教学的特点和优势

多媒体教学与传统教学相比具有多样化、智能化、丰富化等特点和优势,特别是在教育由“应试教育、学校教育”向“素质教育、自我教育”转变的今天,开展多媒体教学,加速教育技术手段现代化,是社会进步的必然趋势。

1.教学内容多样化。 2.教学过程智能化。 3.教学资源丰富化。

二、多媒体教学存在的问题和弊端

多媒体教学作为一种新的教学模式,与一般事物发展一样,有其产生、发展、成熟的过程。目前,多媒体教学在高校课堂教学中的应用正处于摸索阶段,在诸多地方有待完善和提高。

1.师生过多地依赖多媒体。 2 币生交流较少。

3.教师课件开发水平受限。 4.多媒体教学不够规范。

三、利用多媒体技术提高课堂教学效果的方法

1、根据教学目的和内容。有选择的采用多媒体教学方式

2、多媒体课堂教学应与传统课堂教学方式有机结合

多媒体教学作为一种现代化教学手段,并不是排斥传统教学手段,二者应是互相对应、互相支撑的有机结合,优势互补,获得最大的教学效果。

(1)多媒体课堂教学中,教师不能仅靠键盘、鼠标和屏幕来传达知识与信息。要转变教育理念.以先进的教育理论为指导。

(2) 加强师生课堂上的互动。教学中可适当的开展一些课堂讨论,使学生身临其境地参与进去,这样既可提高学生的听课注意力,又可及时了解学生对知识点的理解、掌握情况。

(3) 加强对教师的培训。在多媒体课堂教学中,还要注意控制教学进度和节奏。

(4)对于新教师,采用多媒体授课之前,最好应有传统教学方式的训练,通过一到二遍的传统教学方式讲授,真正理解“讲课”与“念书本”的区别,学会一定的讲课技巧。

3、多媒体课件的编制要注重教学需要课件编制中应该注重以下几点:

(1) 教师自己编制课件

(2)课件设计、编制要突出重点,内容适当 (3)课件编制要注意内容充实、图文并茂

4、学校要制定多媒体教学检查制度,建立科学合理的评价机制。

四、结论

多媒体教学的发展推动了教育的现代化,促进了教学改革。而影响多媒体教学成功开展的因素有很多,我们必须全面正确认识多媒体教学的优势和出现的问题。它不是常规教学的全部,而只是辅助手段,弥补了传统教学手段的不足。大力提倡计算机辅助教学,是先进教育理念的一种延伸,是提高教学质量的一种方式。

总之,多媒体技术只是一种辅助教学手段,是教师教学活动的工具,处在被支配的地位,只有教师才是课堂教学的主导。将多媒体技术用于课堂教学,是为了改进传统教学方式的不足,实现传统教学方式无法实现的教学效果,而不是抛弃传统教学方式。因此,其重点应放在如何用多媒体技术优化课堂教学结构,把教材内容,要点、重点和难点通过多媒体技术阐述清楚。我们应将现代教育技术理论,与具体的学科教学实践和信息技术相结合,一切以提高教学效果为准则,努力寻求它和传统教学手段的结合点,各施所长,二者互补,从而达到事半功倍的效果。

第15篇:多媒体教学

多媒体教学——事半功倍

河南省新乡县朗公庙中心学校 张秋英

关键词:多媒体 现代教育 教学工具 教学效率

内容提要:运用多媒体课件进行语文教学,打破了学生感觉器官的平衡,并以其多媒体的综合性、直观性、形象性和生动性,充分调动了学生学习语文的热情,激起学生强烈的求知欲望。多媒体教学在未来的社会发展中必将占据越来越重要的地位。

正文:作为 21世纪的伟大工程之一,信息技术在未来的社会发展中必将占据越来越重要的地位。作为其有效载体之一的现代多媒体教育技术,也必将日益凸显它的非凡魅力。运用多媒体课件进行语文教学,打破了学生感觉器官的平衡,并以其多媒体的综合性、直观性、形象性和生动性,充分调动了学生学习语文的热情,激起学生强烈的求知欲望。

现代化的语文课堂运用现代化的多媒体教育技术,应当是这一理论的实践尝试和发展,它对于广大语文教师来讲,无疑是一项崭新、鲜活、长远而且艰巨的任务。因此,语文教师在现代教育技术面前就无形被激活,其表现有二:一是语文学科的工具性决定教师必须活学活用这一新型的“教学工具”。二是语文教学的审美性又决定教师必须活用善用多媒体教育技术。如,面对一段“风戏垂柳,湖波荡漾,花前月下、深谷幽涧,泉水叮咚、百鸟鸣啭,碧江晚霞、夏岭秋山„„”的文字,教师如何尽其美,广其义,深其涵,行之远呢?这种时候,如果教师只是一味磨破“嘴皮子”,那么,久而久之,其培养出来的学生也必然会是“书呆子”。但倘若引进了现代多媒体教育技术,鼠标轻轻一点,画面、音乐、文字落英缤纷,表情、眼神、思考也就流光溢彩。又如学习《祥林嫂》,就可以运用幻灯片或电脑将祥林嫂三次不同的肖像特征用镜头组合的方式进行展示,调动学生不同的感觉器官,按照规定的要求去接受,去比较,从而深刻体会封建礼教对人性的迫害。 这样的多媒体教学,比教师生搬硬套的讲解要省力得多,要形象生动得多,学生不仅能一目了然,还能在快乐中学习。

在这里,多媒体教育技术代替了“言”而有“文”,其对学生的影响自然刻骨铭心,久而难忘了。

一、利用多媒体教学,拓宽学生的知识面

- 123

第16篇:移动app软件设计

广州移动app软件设计开发公司【启汇网络】分析,移动应用市场蓬勃发展也让众多的移动app软件开发者获利匪浅,也由此涌现出了许多优秀的app软件设计,随着用户的品质需求的上升,App界面设计也被提升到了全新的高度。 一:专业APP设计是影响用户第一印象的重要因素。

从2005年到2013年,技术让世界的细节发生了深刻的改变。互联网公司知道移动端在于现在和未来几年的重要性,都疯狂的争斗着入口。那些我们看不到的硝烟都在演化着未来。我们看到的是那些每天都有新意的App应用程序。如何设计出经典,如何在岁月里长久存留的经典!

移动应用实现了从互联网到移动设备的成功蜕变,从用户角度出发,对视觉、风格、操作方式、架构、内容呈现等各个方面进行设计挖掘,从而打造出最为精致的应用。

设计移动app软件注意事项汇总:

1.不要在没有流程图之就前开始设计或者画线框图

2.分工要明确 不要忽略开发预算。

3.不要使用低分辨率的图片 避免使用位图。

4.不要把点击区域设置的太小,大多数用户的食指宽1.6~2厘米。

5.不要随意使用介绍动画,事实上,这些介绍动画也延迟了用户接触App的时间。

6.别让用户空等,App加载时间过长很容易让用户以为出现了什么故障,也会带来糟糕的用户体验。

7.不要盲目照搬别的操作系统。

8.不要在高密度像素屏幕上填充过多信息或者UI组件。

9.不要觉得每个用户有着跟你一样的App使用方式。

10.不要忘记手势 但不要滥用。

二:优秀APP软件是功能与设计的相结合。

随着智能手机市场的扩大,平板与智能手机的普及使现在的移动市场成为各大企业必争之地,各种APP层出不穷,有昙花一现的,也有经久不衰的。

我们在设开发移动手机APP应用软件时要注意哪些要点:

1:降低用户使用的门槛。不少用户在第一次使用一个app软件时,出于对app客户端的陌生,都会先了解app的使用步骤。

2:不要让用户迷惑。让用户迷惑的东西包括:用户看不懂的功能、隐藏的功能、速度慢、当发现用户被这些功能“困住”不能给及时的反馈。

3:永远不要为了美观牺牲了功能。开发一款手机app应用软件不能忽视功能,只有解决用户需求,才谈到app的美感。

4:了解用户行为的原因。不管是移动APP软件开发还是网页端的开发,到最后做的都是做的用户体验。让客户得到最好的用户体验,能实现他想要的功能,这才一款好的APP软件。

启汇网络认为,对于所有的设计师和开发者来说,未来几年可以称得上是拥有非常美好市场的,随着移动逐渐成主流,开发者和设计师拥有更多的机会来展示自己,也通过app应用从中获取利润,当然谁也不能拍拍胸脯保证一定赢,因为无论何时,祸福总相倚,但只要对人心所向的App设计趋势深入了解并加以利用,相信在未来让人爱不释手的优秀应用一定会层出不穷。

第17篇:软件设计职业生涯规划

引言

古语有云“凡事预则立,不预则废”。作为当代大学生,我们面临着巨大的就业压力;同时,我们接受高等的素质教育,担负报答父母、建设祖国的责任;因此,我们更有理由为自己的四年大学生活作出规划,为将来的职业生涯作出规划。

一、自我分析

1、气质评定

具有较强的应变能力,善于处理各种复杂的情况在处理个方面问题时考虑周全,踏实肯干,具有较强的坚持性,与他人交往适度,既让人感到亲切又保持一定距离。

2霍兰德职业性测试

E(事业型)进取心强,勇于开拓勇挑重担,喜欢支配别人,具有领导才能,喜欢竞争,精力充沛,自信善于交际。

S(社会性)喜欢与人打交道,善于交际。 3 360度评价

家人评价:有责任感,诚实守信,学习刻苦,自控能力较差,胆小 老师评价:做事有条理,虚心好学,善于吸收别人的优点,太过坚持自己的想法,不能当机立断。

同学评价:乐于助人,不怕辛苦,不怕困难。过于拘谨。

自我评价:有责任感,有一定的洞察能力,善于进行沟通。有良好的团队合作精神,临场应变能力较差,表达能力不强,做事恒心不足。

自我分析小结:总结来说,我是个外向开朗、乐于沟通、善于学习并且处事条理的人;我认为我的个性与能力使我适合较为多样的工作类型。

二、环境分析

1、家庭环境分析 我的家庭很一般,家里收入一般,我之前并没有接触过与现在所学专业相关的东西,也没有特殊的家庭背景。由于家庭气氛比较和谐,让我无形中更懂得如何与人相处,这样潜移默化的让我也能更认真的对待生活,工作中的事情。

2、学校环境分析

我所在的学校是一个普通专科院校,在学校前途一片大好的大环境下,我自身也会有很好的发展。学校是一个小社会,在这里,我们要处理很多的人际关系,与周围的同学相处的能力就很能体现一个人自身与他人的沟通交流能力。学校的学生来自于全国各地,我们能通过对不同生活背景,不同生活习惯的人交往来锻炼自己的与人交往能力。

3、社会环境分析

随着科学技术的发展,所有大型企业都开始进行智能化改革,所有企业都需要网络人来来设计,管理。这就为我们提供了广阔的就业天地。现在信息化浪潮正在席卷全球,新经济的发展和经济全球化都必须依托信息化。

4、职业环境分析 (1)行业分析

软件业的发展关系到一个国家的政治和未来,软件产业将成为21世纪拥有最大产业规模和最具广阔前景的新兴产业之一。软件领域是一个包括系统软件,嵌入式软件,数据库软件,财务及企业管理软件,教育软件,游戏软件等在内的复杂的集合体。软件行业对人才的需求量也成上升趋势。人才供给缺口将是未来一段时间软件人才市场的主旋律。 (2)

职业分析

人才行情:需求大,对专业功底要求比较深,但也适合一般本科生从事。最重要的是职业发展空间足够大。

三、职业定位

1、初级程序员:达到工作承担要求;具有一定沟通能力和工作责任心。

2、软件工程师:所负责的项目客户满意度达到满意以上。

3、系统分析师:熟练掌握软件需求分析/大型项目的策划。熟练掌握软件的系统设计。熟悉高级项目管理和质量控制。

四、工作计划

1、短期目标(大学期间) 在校期间完成基本的学业,掌握好基础课,为毕业后做准备,通过英语六级考试,利用课余时间深入的学习软件编程技术,LINUX系统,数据库语言,汇编语言、数据结构,提升自己的专业素质。积极的参加各项活动,提高自己沟通能力,语言表达能力,交际能力,团队合作能力,利用假期时间找一些小型的公司工作实践,在实践中发现问提,提高自己,了解最新的行业发展动态,学习最新的技术。

2、中期目标(毕业后) 积极投放简历,利用几年工作实践的时间熟练掌握软件编程,积累大量软件编程经验,学习企业管理知识,关注最新的行业发展动态新技术的应用,为以后的发展做好准备。工作后不多讲求薪酬的高低,重在汲取经验。多跟同学,老师交流,尤其跟老师和实践时的老员工交流,向他们学习成功的经验,失败的教训。好好学习, 基础扎实, 视野开阔。 三脉积累 (知脉、人 脉、资金脉) 多个朋友多 条路

3、长期计划(工作十年以后)

尝试和一些志同道合的朋友合作创业,以自己的成熟技术和良好的信誉为核心竞争力,在同行中拥有自己的优势一点点的积累经验,扩展自己的客户群。

五、评估和调整

职业生涯规划是一个动态的过程,必须根据实施结果的情况及环境的变化及时的评估和修正

1、评估时间

规划实施过程中,我将定期半年或一年评估规划,或者出现特殊情况时,随时评估并进行相应的调整。

2、规划调整的原则

我可能遇到自身情况、外部如社会、家庭环境、机遇情况的变化及不可抗拒的因素,如果出现这种情况将及时评估,灵活调整。 结束语

计划固然宏大而美好,但更重要的,在于其具体实践并取得成效。只说不做,所谓的职业规划目标就如空中楼阁般美好却遥不可及,到头来只是一个安慰自己的美丽谎言。然而,现实是未知多变的,定出的目标计划随时都可能遭遇问题,要求有清醒的头脑,巨大的勇气,克服困难,取得成功。也许最终我们的目标也不能达成,但至少我们努力过,奋斗过,拼搏过,人生也便无悔。随着社会信息化的深入,各行业大都需要软件工程专业人才,而且薪金很高。学生毕业后可以从事软件设备和信息系统的设计、应用开发以及技术管理等。比如,做软件工程师,设计开发一些软件、通信器件;做软件工程师,设计开发与硬件相关的各种软件;做项目主管,策划一些大的系统,这对经验、知识要求很高;还可以继续进修成为大专院校教室,从事科研或实验教学等工作。

中国it行业起步至今有十几年,很年轻。新鲜的事物、朝阳的产业总是备受注目。正是这个原因,计算机专业迅速成为高校的热门专业,不少同学削尖又再削尖了脑袋往这个象牙塔里的象牙顶钻,或为兴趣,或为谋生掌握一门技能,或为前途更好更快地发展

第18篇:02软件设计说明书

文档编号: LMS - 02 版 本 号:

V1.0

文档名称: 项目名称:

软件设计说明书 学生考勤管理系统

编写: 学号:10006410 姓名:李春林 校对: 学号:10006410 姓名:李春林 审核: 学号:10006410 姓名:李春林 日期: 院系: 专业:

2013年5月8日

通达学院 计算机科学与技术 1. 引言 1.1 编写目的

要求《学生考勤管理系统》对学校全体学生的资料和考勤情况进行管理,通过每日的打卡把出勤信息输入到学校的考勤管理中心,保存学生每日的出勤情况,以便统计学生的出勤情况。同时方便班长查阅,即节省了人力,又省去了中间的很多容易出错的步骤。让学校学生的考勤管理更具有透明性,且方便管理。

明确所要开发的软件应具有的功能、性能,是系统分析人员和软件设计人员能清楚地了解用户的需求,并在此基础上进一步提出概要设计和完成后续设计与开发工作,为软件开发范围、业务处理规范提供依据。根据《需求规格说明书》,在仔细考虑讨论之后,我们又进一步对《学生考勤管理系统》软件的功能划分、数据结构、软件总体结构进行设计,从而完成概要设计,作为软件详细设计的基础。

1.2 项目背景

项目委托单位:计算机学院软件工程系。

开发单位:*************************************。

考勤作为一个基础管理,是学校对学生进行管理的基本依据。实际管理和记录工作非常需要快速获知各个年级学生的每日出勤情况,以便于及时向班长反映学生出勤、缺勤情况(包括迟到、早退、病假、事假、旷课等情况)。因此此系统在操作系统的基础上,结合Accese数据库管理系统,运用VC++来实现运行。

1.3 定义

学生考勤管理系统

GUI:Graphic User Interface,图形用户界面。

1.4 参考资料

[1] 国刚 周峰 孙更新编著

《UML与Rational Rose 2003》 北京:电子工业出版社 2007

[2] 彭德中编著《软件工程—理论与实践》 高等教育出版社 2004 [3] 李佳若 《Accese2002数据库应用》 人民邮电出版社 2006

[4] 《学生考勤管理系统》 曲阜师范大学计算机科学学院06级2班 第二小组 2. 任务概述 2.1 目标

《学生考勤管理系统》相应的需求有:

1.具有输入、查询、删除、修改记录的任课老师,学院领导以及系统开发人员等系统管理员;

2.具有查询记录的学生作为普通用户;3.能够对需要的统计结果提供打印输出;

4. 能够提供一定的安全机制,提供数据信息授权访问,防止随意删改,同时提供信息备份的服务。

a) 运行环境

Intel486以上系列、AMD K6 以上系列等PC台式机和便携式电脑; 运行时占用内存:≤1MB; 所需硬盘空间:≤5MB;

软件平台:中文Windows2003/xp或更高版本;

b) 条件与限制

由于时间比较短,使用计算机不方便以及对于网络编程不熟悉,本图书馆管理系统并没有提供数据的远程访问功能。对信息的保护手段仅限于设置用户级别,以及提供数据文件的备份,比较简单,安全性能有待进一步完善。 5. 总体设计 3.1 处理流程

1.主流程

1) 建立与数据库的连接 2) 获取系统设置

3) 显示主对话框(即主界面)

4) 等待用户输入,如为学生:进入学生考勤流程(显示学生对话框)。如为教师:进入教师工作流程(显示教师对话框)。如为院系领导:进入院系领导流程(显示院系领导对话框)。如为系统管理:进入系统管理流程(进行授权)。如为退出:检查所有子窗口,关闭对话框,断开与数据库的连接

2.学生考勤流程

1) 要求用户输入学号,姓名 2) 学生身份检验

3) 获取相关的学生信息并显示

4) 等待用户输入,如为确认输入操作:读入操作,提交请求,更新信息显示,把操作信息写入考勤访问记录文件进行备份,显示考勤操作结果。如为完成相应操作:结束学生流程。

3.教师工作流程

1) 等待用户输入:如为确认输入教师号:读入教师号,提交教师请求,显示教师操作的返还信息。如为查询考勤状态:显示考勤信息,如为退出:结束教师工作流程。

4.院系领导流程

1) 等待用户输入,如为确认输入院系领导:读入院系领导,显示相应操作,显示操作结果。如为退出状态:结束该流程。

5. 系统管理流程

1) 要求用户输入账号及口令 2) 用户操作权限检验

3) 根据操作权限级别显示系统管理对话框

4) 等待用户输入,如为请假操作:进入请假操作流程。如为学生考勤库操作:进入学生考勤库操作流程。如为数据统计:进入数据统计流程。如为更改口令:要求用户输入口令,检验正确后更新。如为返回:结束系统管理流程

6. 请假操作流程 1) 显示请假信息

2) 等待用户输入,如为事假: 要求输入原因、时间,提交申请,等待审批。如为病假: 要求输入时间和相应证明的照片,确认为病假,等待审批。

7. 查询操作流程 1) 显示学生考勤信息

2) 等待用户输入,如为学生: 输入学生号,查询记录,显示数据。如院系领导:输入口令,查看是否有学生请假或病假审批,要求及时返回审批结果,修改相应信息。 刷新数据显示。如为返回:更新当前记录,结束学生考勤操作流程。

8. 数据统计流程

1) 等待管理员输入,如为开始统计: 读入统计条件,生成统计结果并显示。如为返回:结束统计流程。

3.2

3.2.1 总体结构

1) 主模块调用:

2) 学生考勤模块调用:学生身份检验模块,考勤查询模块,请假申请模块

数据库操作模块

3) 教师工作模块调用:访问记录模块,确认考勤记录模块,考勤查询模

块,教师身份检验模块

数据库操作模块

4) 院系领导模块调用: 访问记录模块,审批请假模块,考勤查询模块,

院系领导身份检验模块

学生考勤模块,教师工作模块,院系领导模块, 系统管理模块。 总体结构和模块外部设计

数据库操作模块

5) 管理员模块调用: 管理员身份检验模块,考勤操作模块,数据显示

模块

5) 考勤查询模块调用: 查询命令生成模块,数据库查询模块

数据显示模块

6) 系统管理模块调用: 考勤操作模块,各身份检验模块

数据统计模块,更改口令等设置模块

7) 身份检验模块调用: 数据库查询模块

8) 考勤检验模块调用:

9) 考勤记录模块调用:

数据库查询模块

10) 考勤操作模块调用: 考勤记录集获取模块,当前记录更新模块

更新显示模块,数据库查询模块

11) 数据统计模块调用: 查询命令生成模块,数据库查询模块

数据显示模块

12) 当前记录更新模块: 数据库操作模块

13) 考勤记录集获取模块: 数据库查询模块

3.2.2 模块外部描述

1) 主模块:从操作系统获得程序运行所需资源,显示主对话框,完成消息处理,调用相应的子模块。

2) 学生考勤信息模块:检验输入的学生学号,获取相关的学生信息并根据操作结果予以刷新,读入用户输入的学生学号,检验学号信息确定操作合法性,对合法学生考勤操作,登记入访问记录库,

数据库查询模块

数据库操作模块 对非法的学生考勤操作,提出警告,并返回。

3) 学生考勤信息模块:检验输入的学生学号,获取相关的学生信息并根据操作结果予以刷新,读入用户输入的学生学号,检验学号信息确定操作合法性,对合法学生考勤操作,登记入访问记录库,对非法的学生考勤操作,提出警告,并返回。

4) 教师工作模块:检验输入的教师号,获取相关的教师信息并根据操作结果予以刷新,读入用户输入的教师号,检验教师号信息确定操作合法性,对合法教师号操作,登记入访问记录库,对非法教师号操作,提出警告,并返回。

5) 院系领导模块:检验输入的口令,获取相关的领导信息并根据操作结果予以刷新,读入用户输入的口令,检验口令确定操作合法性,对合法领导操作,登记入访问记录库,对非法领导操作,提出警告,并返回。

6) 学生考勤信息查询模块:根据用户界面的输入生成数据库查询命令,向数据库提交查询请求,查询并显示查询操作的结果。 7) 系统管理模块:根据用户输入检验操作权限,根据用户输入选择调用不同的子模块,根据不同的操作权限,对数据进行保护。 8) 身份检验模块:根据输入的证号或口令生成查询语句,查询数据库,返回查询结果。

9) 请假申请模块:根据请假原因进行审批, 返回请假成功/失败结果。

10) 访问记录检验模块:根据学生学号生成查询语句,调用数据库查询模块查询借书记录,返回查询结果。

11) 系统操作权限查验:检验是否正确的用户与口令,返回相应的操作级别。

12) 学生考勤信息库操作模块:显示考勤信息的数据项,根据院系领导或管理员输入修改,增加或删除。

13) 数据统计模块:根据用户输入,生成查询命令,根据要求进行查询,将所得结果显示给用户。

14) 数据库操作模块:根据输入的数据库操作命令,完成相应操作,将操作结果返回。

15) 查询命令生成模块:将用户界面的输入转换成为数据库查询命令 16) 数据库查询模块:根据输入的数据库查询命令,进行查询,将查询生成的结果返回。

17) 数据显示模块:将数据按照一定格式显示(列表),根据用户输入,调整格式。 功能分配

1浏览功能:学生考勤信息库操作模块

查询功能:学生考勤信息库操作模块

插入功能:学生考勤信息库操作模块

修改功能: 学生考勤信息库操作模块

删除功能:学生考勤信息库操作模块

授权功能: 系统操作权限检验模块

数据统计模块

管理员操作模块 管理员操作模块 管理员操作模块

3.3

6. 接口设计 4.1 用户接口

使用基于对话框的GUI,用户通过鼠标的点击和键盘的输入完成操作,编辑框用于用户的输入。

4.2 外部接口

1.用户界面

使用Windows的标准对话框的形式,完全用对话框实现。应用工具:Visual C++。

1) 主对话框:由六个功能按钮构成

学生、教师、院系领导、管理员、帮助、退出

2) 学生对话框:

学生学号编辑框: 用于输入学生学号; 学生信息显示区: 用于显示学生信息(姓名); 学生考勤信息显示区:用于显示学生考勤信息 学生请假显示区:用于输入学生请假申请; 请假申请提交按钮:提交请假申请请求; 退出按钮:退出学生对话框。

3) 教师工作对话框:

教师号编辑框:用于输入教师号;

教师信息显示区:用于显示教师信息(教师号、教师姓名,教授课程号); 学生考勤信息显示区:用于显示学生考勤(正常、请假、旷课、迟到、早

退等);

提交按钮:用于提交确认学生考勤信息; 返回按钮:用于退出教师对话框。

4) 院系领导对话框:

院系领导口令编辑框:用于输入领导口令

学生考勤信息显示区:用于显示学生考勤(正常、请假、旷课、迟到、早

退等);

学生请假显示区:用于输入学生请假审批; 时间编辑框:用于编辑年与月; 退出按钮:用于院系领导对话框;

5) 管理员对话框:

管理员口令编辑框:用于输入管理员口令;

学生考勤信息显示区:用于显示学生考勤(正常、请假、旷课、迟到、早

退等);

学生考勤信息修改编辑框:用于修改某些特殊情况的学生信息; 学生考勤信息录入编辑框:用于录入学生考勤信息;

6) 系统操作对话框:由六个功能按钮构成

学生考勤信息库操作、数据统计、数据备份、更改口令、返回。

7) 学生考勤信息库对话框:

学生学号编辑框:用于显示学生学号; 学生姓名编辑框:用于显示学生姓名; 课程号编辑框:用于显示相应的课程号; 事假申请编辑框:用于显示事假申请; 病假申请编辑框:用于显示病假申请; 迟到编辑框:用于显示迟到; 早退编辑框:用于显示早退; 旷课编辑框:用于显示旷课;

“前一个”按钮:显示和编辑前一个记录; “后一个”按钮:显示和编辑后一个记录;

“移动到”按钮:显示和编辑指定学生学号的考勤信息; “修改”按钮:修改某些特殊情况考勤信息; “添加”按钮:增加学生考勤信息; “删除”按钮:删除当前的学生考勤信息; “退出”按钮:退出学生考勤信息库操作对话框。

8) 数据统计对话框:

统计条件单选框:用于选择统计条件类别(学生、教师、院系领导、管理

员情况);

学生考勤统计条件复选框:用于指定统计条件包含的相关项(学生学号、

学生姓名);

教师统计条件复选框:用于指定统计条件包含的相关项(教师号、学生学

号、课程号); 院系领导统计条件复选框:用于指定统计条件包含的相关性(领导口令、

相关操作、审批日期);

统计输出设置单选框:用于选择统计结果的输出类别;

学生考勤统计输出设置复选框:用于指定输出项(学生学号、考勤状态); 教师统计输出设置复选框:用于指定输出项(教师号、课程号、查询的考

勤状况);

院系领导输出设置复选框:用于指定输出项(领导口令、审批结果、审

批日期、查询信息)

管理员输出设置复选框:用于指定输出项(管理员口令、考勤状态)

“开始统计”按钮:提交统计请求; “返回”按钮:退出数据统计对话框。

9) 更改口令对话框:

旧口令输入框:输入旧口令; 新口令输入框:输入新口令;

新口令确认输入框:再输入一次新口令; 确认按钮:确认输入的新口令,并提交。

2.软件接口

使用Acce数据库的驱动程序,通过ODBC接口访问。

4.3 内部接口 1.主模块:

输入:操作系统传递至的各种消息以及用户的输入数据 输出:用户界面显示 上层模块:无

下层模块:学生考勤模块、教师工作模块、院系领导模块、系统管

理模块

2.学生考勤模块:

输入:学生学号、课程号 输出:考勤信息 上层模块:主模块

下层模块:学生考勤检验模块、请假模块、访问记录登记模块、相

关信息获取模块。

3.教师工作模块: 输入:教师号、学生号 输出:查询信息、确认信息 上层模块:主模块

下层模块:访问记录检验模块、相关信息获取模块。

4.院系领导模块:

输入:领导口令

输出:审批结果、查询信息 上层模块:主模块

下层模块:访问记录检验模块、相关信息获取模块。

5.系统操作模块:

输入:与系统管理对话框有关的各种用户及系统消息 输出:

上层模块:主模块

下层模块:系统操作权限检验模块、考勤信息库操作模块、数据统

计模块。

6.各身份检验模块:

输入: 身份验证号 输出:合法\\非法用户标志 上层模块:对应身份模块 下层模块:数据库查询模块

7.相关信息获取模块:

输入:身份验证号

输出:与身份验证号匹配的记录集 上层模块:对应身份模块 下层模块:数据库查询模块

8.访问记录登记模块:

输入:身份验证号 输出:操作结果信息 上层模块:对应身份模块 下层模块:数据库操作模块

9.查询命令生成模块:

输入:用户界面的输入

输出:数据库查询命令(SQL命令) 上层模块:查询模块、数据统计模块 下层模块:无

10.数据显示模块:

输入:数据库操作的结果集 输出:用户界面的数据列表显示 上层模块:查询模块、数据统计模块。 下层模块:无

11.系统操作权限检验模块:

输入:用户名、用户口令 输出:合法/非法用户标志 上层模块:系统操作模块 下层模块:数据库查询模块

12.显示更新模块

输入:

输出:用户界面显示

上层模块:学生考勤信息库操作模块、、系统设置模块。 下层模块:

13.更新当前记录模块

输入:

输出:操作结果信息

上层模块:学生考勤信息库操作模块、系统设置模块 下层模块:数据库操作模块

14.数据统计模块:

输入:统计方式及其关键字 输出:统计结果视图显示 上层模块:系统操作模块

下层模块:查询命令生成模块、数据库查询模块、数据显示模块

15.数据库操作模块:

输入:数据操作命令 输出:

上层模块:学生考勤模块 下层模块:无

16.数据库查询模块:

输入:数据查询命令 输出:查询结果集

上层模块:各身份检验模块、访问记录登记模块、相关信息获取模

块、查询模块、系统操作权限查验模块、数据统计模块、系统设置模块。

下层模块:无

4.4 功能分配

浏览功能:学生考勤信息库操作模块

查询功能:学生考勤信息库操作模块

插入功能:学生考勤信息库操作模块

修改功能: 学生考勤信息库操作模块

删除功能:学生考勤信息库操作模块

授权功能: 系统操作权限检验模块

管理员操作模块

管理员操作模块

管理员操作模块

数据统计模块

7.数据结构设计 5.1 逻辑结构设计

学生考勤表:由多个学生考勤记录构成

学生考勤记录的数据结构如下: 学生学号

学生姓名

院系

年级

专业

性别

迟到

早退

旷课

请假

整数(唯一标识)

变长字符串 变长字符串 变长字符串 变长字符串 变长字符串 变长字符串

变长字符串

变长字符串 变长字符串

教师表:由多个教师记录构成

教师记录的数据结构如下:

教师号 课程号

整数(唯一标识)

变长字符串 变长字符串 教师姓名

院系领导表:由多个院系领导记录构成

院系领导记录的数据结构如下:

院系领导口令

院系领导姓名

整数(唯一标识) 变长字符串

访问记录表:由若干个访问记录构成

请假记录的数据结构如下: 请假学生学号(BookID) 姓名(ReaderID) 请假时间(BorrowDate) 销假学生学号(BookID) 姓名(ReaderID) 还书时间(ReturnDate)

整数(与学生考勤库中的学生学号对应)(唯一标识)

变长字符串(与学生考勤库中的姓名对应)

日期

整数(与学生考勤库中的学生学号对应)(唯一标识)

变长字符串(与学生考勤库中的姓名对应) 日期 销假记录的数据结构如下:

系统操作员记录表:由若干个系统操作员记录构成 系统操作员记录的数据结构如下:

记录序号(id) 整数(系统自动生成,唯一标示符) 账号(Administrater) 口令(Paword)

5.2 物理结构设计 数据的物理结构由使用的数据库决定。

5.3 数据结构与程序的关系 主模块:连接数据库;

学生考勤模块:指定学号,姓名,读出考勤状态,记录考勤时期,对应课程号的相关信息,并把相关信息记录到访问记录模块中。

教师模块:指定学号,教师号,读出学生考勤状态,对考勤状态确认,记录查询日期,教师的相关信息,并把相关信息记录到访问记录模块中。

院系领导模块:制定学号,院系领导号,读出学生考勤状态和请假申请相关信息,对请假申请进行审批,并把相关信息记录到访问记录模块中。

查询模块:指定查询条件,提交给数据库操作模块。

系统操作模块:对学生考勤信息库操作,调用数据库操作模块对各个库进行相应操作,对数据进行备份,在授权操作中检验用户身份。

权限级别(Level)

变长字符串 变长字符串 整数 8.

运行设计 6.1 运行模块的组合

程序启动后,进入主模块,用户的单击对话框按钮事件触发主模块调用各下层模块,进入对应的子对话框,同样由用户的输入触发这些模块调用其下层模块,完成相应操作。

6.2 运行控制

本软件控制流程:主程序运行,等待用户的输入,根据用户的输入调用各子模块。

6.3 出错处理及安全保密设计

1.提供丰富的出错提示信息;2.提供一定的保密手段。

6.4 维护设计

第19篇:3D游戏软件设计

注:“★考核知识点”后面的标注内容在PPT中均有对应章节,因PPT序号混乱,不在考核知识点后一一罗列,请在PPT中查找。

一、客观部分:(单项选择、多项选择、不定项选择、判断)

(一)、选择部分

(1)OPenGL常用的库里面,属于核心库的是( )

A GL B GLU C GLAUX DGLUT ★考核知识点: OpenGL概述

(2)OPenGL渲染流水中,对光栅化描述正确的是( )

A 把顶点变换成图元

B 把几何数据和像素数据转换为片断的过程。它将几何数据转换成片元,片元和要显示的像素一一对应

C OpenGL应用程序可以在几何物体上应用纹理图像,使它们看上去更为逼真D主要的内容就是裁剪,它的任务是消除位于半空间之外的那部分几何图元。在某些情况下,还要进行透视除法,用以得到归一化的设备坐标

★考核知识点: OpenGL概述

(3)下面对于OpenGL特点描述正确的有( )

A标准支持灵活,可以用软件例程实现也可以使用软硬件组合使用 B具有灵活的伸缩性

C提供了一套良好的功能扩充机制,并且各个版本向后兼容 D跨平台,在科研和教学上是主流

★考核知识点: OpenGL概述

(4)1992年7月,SGI公司发布了OpenGL的1.0版本,随后又与微软公司共同开发了NT版本的OpenGL,从而使一些原来必须在高档图形工作站上运行的大型3D图形处理软件也可以在微机上运用( )

★考核知识点: OpenGL概述

(5)OpenGL(开放性图形库Open Graphics Library):是图形硬件的一种软件接口( )

★考核知识点: OpenGL概述

(6)( )是用于定义构成物体的三角形单元列表的坐标系。

A 观察坐标系B世界坐标系C本地坐标系D转换坐标系

★考核知识点: 状态管理和绘制几何物体

(7)glBegin()函数的意义是( ) A标志着程序的执行的开始 B标志着一个顶点数据列表的开始 C标志着OpenGL的绘制操作的开始 D标志着当前函数的开始

★考核知识点: 状态管理和绘制几何物体

(8)在win32程序中,主函数是从哪里进入执行的( )

A GLMain B WinMain C Begin Dmain ★考核知识点: 状态管理和绘制几何物体

(9)OpenGL中在颜色索引模式下使用的用于选择单值索引的函数是( )。 A glIndex BglClampColor C glClear D glColor3f ★考核知识点: 颜色渲染和纹理贴图 (10)下列哪个颜色不属于三原色( ) A红 B蓝 C绿D白

★考核知识点: 颜色渲染和纹理贴图

(11)OpenGL的光照模型根据材料反射的红、绿和蓝光的比例来模拟它的颜色。当一个纯红的球体,如果给球体仅仅投上绿色的光线,那么看起来球的颜色会是黑色( )

★考核知识点: 颜色渲染和纹理贴图

A (0,0,0) B(255,0,255) C(255,255,255) D(1,1,1) (12)用函数glColor3i()函数设置的黑色的颜色值为( )

★考核知识点: 颜色渲染和纹理贴图

(13)OpenGL中光照模型,被物体表面均匀的反射。即使光是被均匀的反射回去的,它直射的物体表面比从某个角度照射过来时要亮( )

A环境光B散射光C镜面光D发射光

★考核知识点:环境光、散射光、镜面光、发射光

(14)OpenGL中如何判断一个点接收了光源的多少光线( )

A通过距离光源的距离进行计算 B通过法线相对光源的方向进行计算 C通过物体的颜色值进行计算

D通过物体和光源的颜色值的综合考虑进行计算

★考核知识点:光照

(15)OpenGL提供了最大数目为N的单场景内光照光源模型,N为( )

A 1 B 8 C 16

D不限制,只要为2的幂就可以了

★考核知识点:光照

(16)OpenGL光照模型中,有一种会将光源强烈的反射到了另外一个特定的方向。高亮 A镜面光B聚光灯光C环境光D发射光 度的光柱往往能在被照射的物体上产生称之为亮斑的亮点( )

★考核知识点:光照

(17)OpenGL光照模型中,表面的发射颜色可以增加物体的强度,但是他们不受任何★考核知识点:光照 光源的影响,在整个场景中,并没有作为一种额外的光照( ) (18)设置光源位置时,当我们的光源坐标位置(x,y,z,w)中的w为0时代表我们的光为平行光源( )

★考核知识点:光照

(19)OpenGL一个场景中至多可以在包含16个光源( )

★考核知识点:光照

(20)用函数glColor3i()函数设置的黑色的颜色值为( )

★考核知识点:绘制像素、位图字体和图像

(21)像素数据从可以开始从缓冲区读取到内存然后把像素数据从内存写入到帧缓冲最后在帧缓冲内部复制像素数据( )

★考核知识点:绘制像素、位图字体和图像

(22)以下哪个函数可以设置当前的光栅位置( )

A glTranslatef() B glRasterPos() C glRotatef() D glDrawPos() ★考核知识点:绘制像素、位图字体和图像

(23)在绘制几何图形之时,我们可以使用glColor*( )函数去设置当前颜色或者当前颜色索引( )

★考核知识点:绘制像素、位图字体和图像

(24)在设置了光栅位置之后,我们可以使用glBitmap函数来绘制数据( )

★考核知识点:绘制像素、位图字体和图像

(25)void glRasterPos2*(type x,type y);用于设置位图的绘制位置。( )

★考核知识点:绘制像素、位图字体和图像

(26)glCopyPixels的像素路径包括( )

A像素传输操作B基于片断的操作C在帧缓冲区暂存D光栅化操作

★考核知识点:绘制像素、位图字体和图像

(27)当我们的源和目标的alpha值都为0.35时,当使用函数glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA)进行像素混合,得出的结果描述正确的是? ( )

A源和目标混合效果相同 B混合色更接近源 C混合色更接近目标 D无法判断

★考核知识点:混合抗锯齿雾多边形偏移

(28)启动混合后,如果绿色物体和一个红色物体用glBlendFunc(GL_ONE,GL_ONE)方式混合后,结果的混合部分的颜色为(D) A红色B绿色C白色D黄色

★考核知识点:混合抗锯齿雾多边形偏移

(29)图形学中称由于采样频率不足而造成的失真为走样,反走样通过多重采样改善图形锯齿效果( )

★考核知识点:混合抗锯齿雾多边形偏移

(30)如果不进行混和操作,每个新的片元都被OpenGL当成是不透明的,覆盖掉帧缓存已存在的颜色值。( )

★考核知识点:混合抗锯齿雾多边形偏移

(31)颜色定义中RGBA的A是alpha值,alpha值的作用是将已处理过的片元颜色值与存储在帧缓存中的像素颜色结合起来( )

★考核知识点:混合抗锯齿雾多边形偏移

(32)当前属于颜色索引模式时,我们可以进行的操作有( )。

A实现颜色混和操作B实现透明效果C实现颜色叠加D实现颜色渐变效果

★考核知识点:混合抗锯齿雾多边形偏移

(33)void glBlendFunc(Glenumafactor,Glenumbfactor)

其中参数afactor和参数bfactor分别用于指定源和目标的混合因子( )

★考核知识点:混合抗锯齿雾多边形偏移

(34)颜色混合方程中,GL_FUNC_ADD实现的功能是()

A CsS+CdD B CsS-CcD C min(CsS,CdD) D max(CsS,CdD) ★考核知识点:混合抗锯齿雾多边形偏移

(35)开启颜色混合的函数方式为( )

A GL_BLEND B GL_BLENDING C GL_RENDER D GL_ENABLEBLEND ★考核知识点:混合抗锯齿雾多边形偏移

(36)一个矢量加上一个矢量结果为( )

A一个矢量 B一个标量

C如果为零则不是矢量,其它情况下皆为矢量 D以上说法都不对

★考核知识点:图形变换的数学基础

(37)两个矢量之间的点乘结果为( )

A一个矢量 B一个标量

C如果为零则不是矢量,其它情况下皆为矢量 D以上说法都不对

★考核知识点:图形变换的数学基础

(38)glLoadIdentity()函数对于4×4矩阵操作结果为( )

A [0,0,0,0;0,0,0,0;0,0,0,0;0,0,0,0] B1,1,1,1;1,1,1,1;1,1,1,1;1,1,1,1] C[1,0,0,1;0,1,0,1;0,0,1,1;0,0,0,1] D[1,0,0,0;0,1,0,0;0,0,1,0;0,0,0,1] ★考核知识点:图形变换的数学基础

(39)我们在使用定义视口函数 glViewport 中,第三个参数有什么作用( )

A描述视口的距离屏幕最左位置 B描述视口的距离屏幕最上位置 C描述视口的高度 D描述视口的宽度

★考核知识点:图形变换的数学基础

(40)通过矩阵[sx,0;0,sy]对二维的不经过原点的图元进行缩放变换,有可能得到的结果为( )

A图元相对原点的位置变化了 B图元自身尺寸变化了

C图元可以只发生旋转,相对原点位置没有移动 D图元自身发生了旋转

★考核知识点:图形变换的数学基础

(41)从物体坐标到屏幕坐标的显示流程中我们必须要经过的经典的变换流水包( )

A世界坐标系内地变换 B对窗口的裁剪操作 C窗口到视口的变换 D对模型进行坐标进行变换

★考核知识点:OpenGL的视图变换

(42)函数void gluPerspective ( Param1,Param2,Param3,Param4 )中,标示近裁剪面的是哪个参数( )

A Param1 BParam2 C Param3 D Param4 ★考核知识点:OpenGL的视图变换

(43)哪些变换分别用于设定物体在世界坐标系中的位置、方向以及模型大小。( )

A平移变换B旋转变换C缩放变换D投影变换

★考核知识点:OpenGL的视图变换

(44)( )变换后的的几何体位于观察坐标系中。

A局部变换B取景变换C世界变换D空间变换 ★考核知识点:OpenGL的视图变换

(45)投影变换包括哪几种投影方式。( )

A平面投影B透视投影C正射投影D缩放投影

★考核知识点:OpenGL的视图变换

(46)下对函数gluLookAt(0,0,0, 0,0,-3,1,0,0)描述正确的是

A观察点在原点(AD) B正方向为z轴负方向 C观察方向指向z轴正方向 D正方向为x轴正方向

★考核知识点:OpenGL的视图变换

(47)glRotatef(fRot,1,1,0)描述先按照X轴旋转fRot,接着绕Y轴旋转fRot( )

★考核知识点:OpenGL的视图变换

(48)在OpenGL中如果要实现运动模糊效果,需要借助以下哪个缓冲区( )

A深度缓冲区B帧缓冲区C模版缓冲区D积累缓冲区

★考核知识点:帧缓冲区

(49)当前程序的状态处于常规的绘图模式,那么接下来使用下列哪些函数可以退出当前绘图模式( )

A glRender(GL_FEEDBACK); B glRender(GL_SELECT); C glEnd(); D glBegin(GL_TRIANGLES) ★考核知识点:帧缓冲区

(50)雾化效果在颜色索引模式下是不可用的( )

★考核知识点:帧缓冲区

(51)如果我们需要使用OpenGL进行3维点选操作,那么可以通过函数glRenderMode()指定( )进入选择模式

A GL_FEEDBACK BGL_SELECT C GL_PEEK D GL_MODEVIEW ★考核知识点:帧缓冲区

(52)OpenGL中如果锁住了深度缓冲区,那么所有的物体的深度就无法测试了,物体只是根据绘制的先后相互覆盖了( )

★考核知识点:帧缓冲区

(53)绘制球体,我们使用函数:

void gluSphere( GLUquadricObj *obj,Gldoubleradius,Glintslices,Glint stacks );( )

下面,我们对参数描述正确的选项有( ) A slice代表的就是经线的数目 B stacks参数代表的就是纬线的数目 C slice参数代表的就是纬线的数目 D stacks代表的就是经线的数目

★考核知识点:分割化和二次方程表面

(54)OpenGL中我们需要完成对NURBS对象的销毁,调用的函数是gluDeleteNurbsRenderer( )

★考核知识点:分割化和二次方程表面

(55)常见的纹理寻址模式有( ) A重叠纹理寻址模式B镜像纹理寻址模式 C钳位纹理寻址模式D边界颜色纹理寻址模式

★考核知识点:分割化和二次方程表面

(56)gluQuadricDrawStyle 函数选择用于绘制几何形状的图元类型。系统默认的类型是使用三角条状图元来填充所要绘制的几何形状,填充模式默认为 A GLU_LINE B GL_FILL C GLU_SILHOUETTE D GLU_POINT ★考核知识点:分割化和二次方程表面

(57)绘制球体,我们使用函数:

void gluSphere( GLUquadricObj *obj,Gldoubleradius,Glintslices,Glint stacks ); 下面,我们对参数描述正确的选项有( )

A slice代表的就是经线的数目 B stacks参数代表的就是纬线的数目 C slice参数代表的就是纬线的数目 D stacks代表的就是经线的数目

★考核知识点:求值器和NURBS (58)我们的B样条曲线(三次)和与贝塞尔曲线很相似,不同之处是此曲线会分解成很多的小段。每个给定段的形状都仅受到最近4个控制点的影响( )

★考核知识点:求值器和NURBS (59)我们的B样条曲线(三次)和与贝塞尔曲线很相似,不同之处是此曲线会分解成很多的小段。每个给定段的形状都仅受到最近4个控制点的影响( )

★考核知识点:求值器和NURBS (60)( )是Direct3D用来存储绘制到屏幕上的每个像素点深度信息的一块内存缓冲区

A 广度缓存 B 深度缓存 C 深度测试 D 广度测试

★考核知识点:求值器和NURBS (61)OpenGL中我们需要完成对NURBS对象的销毁,调用的函数是gluDeleteNurbsRenderer( )

★考核知识点:求值器和NURBS (62)纹理阶段混合状态用于指定当前纹理颜色值和Alpha值的混合方法( )

★考核知识点:求值器和NURBS (63)通常情况下,深度缓存用于判断三维空间中物体的遮挡情况( )

★考核知识点:求值器和NURBS (64)设置深度缓存是指设置深度测试成功时对深度缓存如何操作( )

★考核知识点:求值器和NURBS (65)图形学中称由于采样频率不足而造成的失真为走样,反走样通过多重采样改善图形锯齿效果( )

★考核知识点:求值器和NURBS (66)渲染后物体模型通常是由三角形图元组成的,我们称它为一个Mesh结构( )

★考核知识点:求值器和NURBS (67)若要从缓存中只读不写数据,就不需要锁定缓存,用完后解锁( ) (68)如果我们需要使用OpenGL进行3维点选操作,那么可以通过函数glRenderMode()指定GL_SELECT,进入选择模式( )

(69)在执行用于操纵名字堆栈的函数或调用glRenderMode()函数之后,如果出现了一次点击,OpenGL就会在选择数组中写入一个点击记录,所以,如果共享相同的名称对象,不会产生多条点击记录。( ) (70)在点击发生时,名字堆栈的内容从( )的元素开始。 A最顶部B上一个操作的位置C最底部D任意

(71)如果我们需要使用OpenGL进行3维点选操作,那么可以通过函数glRenderMode()指定GL_SELECT,进入选择模式( )

(72)进行点选操作后,假设当前的选择缓冲区为pSelectBuff,那么其中的pSelectBuff[0]的值得含义是( )

A自上一个点击记录之后,与视景体相交的图元的所有顶点的最小窗口坐标的z值 B自上一个点击记录之后,与视景体相交的图元的所有顶点的最大窗口坐标的z值 C点击发生时名字堆栈的内容 D名字堆栈中压入的名字数

(73)OpenGL中如果锁住了深度缓冲区,那么所有的物体的深度就无法测试了,物体只是根据绘制的先后相互覆盖了( )

★考核知识点:选择和反馈

(74)名字堆栈形成了返回选择信息的基础,如果此时我们需要使用某个名称来替换名字堆栈顶部的元素,可以使用函数为( )

A void glInitNames( void );B void glPushName( GLuint name ); C void glPopName( void );D void glLoadName( Gluint name ); ★考核知识点:选择和反馈

(75)选择返回功能函数:

void glSelectBuffer( Glsizeisize,Gluint *buffer )对函数描述正确的是( ) A buffer参数指向的数组用于存放选择数据

B buffer参数指向的数组仅仅用于存放选择的物体ID C size表示这个数组可以存储单个数据的大小 D size表示这个数组可以存储的最大值

★考核知识点:选择和反馈

(76)用glSelectBuffer()函数指定用于返回点击记录的数组( )

★考核知识点:选择和反馈

(77)使用函数 void gluPickMatrix(

Gldoublex,Gldoubley,Gldoublewidth,Gldoubleheight,Glint viewport[4] );选择的挑选区域的中心是( ) A 世界坐标B窗口坐标C物体坐标D可以任意指定

★考核知识点:选择和反馈

(78)由于粒子之间的碰撞计算量很大并且对于大多数模拟来说没有必要,所以我们很少使用粒子之间的碰撞。( )

★考核知识点:粒子系统

(79)粒子(Particle)是一种微小的物体,在数学上通常用点来表示其模型,所以显示和表示粒子时,我们通常使用点结构来描述。( )

★考核知识点:粒子系统

(80)以下可以通过常见的粒子系统实现的是( ) A雪花B下雨C喷泉喷水D金属车漆效果

★考核知识点:粒子系统

(81)如果有两束光进入人眼,他们的成分为(R1,G1,B1)和(R2,G2,B2)那么叠加在一起的时候,如果蓝色分量超出1了,那么最后的叠加结果为( )

A(R1, R2,1)B(R1+R2, R1+R2,1-R1-R2)C(R1+R2, R1+R2,1) D(R1, R2, 1- R1-R2) ★考核知识点:混合效果

(82)Alpha分量主要是用来指定像素的混合计算比例的( )

★考核知识点:混合效果

(83)D3DCOLORVALUE结构体中包含r、g、b和a4个分量,表示物体表面对各种反射光的各种成分的反射比率。r=0.0 g=b=a=1.0;r=g=0.0 。此时红光和蓝光照射过来,只有蓝光被反射,即材质看上去为蓝色( )

★考核知识点:混合效果

(84)OpenGL的光照模型根据材料反射的红、绿和蓝光的比例来模拟它的颜色。当一个纯红的球体,如果给球体仅仅投上绿色的光线,那么看起来球的颜色会是( ) A红色B绿色C白色D黑色

★考核知识点:混合效果

(85)平面着色模式,所有像素的Alpha值都大于等于该多边形的第一个顶点的Alpha值( )

★考核知识点:混合效果

(86)像素的Alpha值就是用来做纹理Alpha混合时进行加权计算的的权值( )

★考核知识点:混合效果

(87)Alpha测试并不把当前像素的颜色与颜色缓冲中像素的颜色混合,像素要么完全不透明,要么完全透明( )

★考核知识点:混合效果

(88)OpenGL中指定源混和因子和目标混和因子的函数:

void glBlendFunc(Glenumafactor,Glenumbfactor)描述正确的是( ) A其中参数afactor和参数用于指定源混合因子 B其中参数bfactor用于指定目标的混合因子 C其中参数afactor用于指定目标的混合因子 D其中参数bfactorb用于指定源的混合因子

★考核知识点:混合效果

(89)常见的纹理寻址模式有( )

A重叠纹理寻址模式B镜像纹理寻址模式C钳位纹理寻址模式D边界颜色纹理寻址模式

★考核知识点:纹理的高级技巧

(90)通过矩阵[sx,0;0,sy]对二维的不经过原点的图元进行缩放变换,有可能得到的结果为 A图元相对原点的位置变化了( ) B图元自身尺寸变化了

C图元可以只发生旋转,相对原点位置没有移动 D图元自身发生了旋转

★考核知识点:纹理的高级技巧

(91)创建一个矩形图元255*255,它的大小恰好与纹理图中纹理的大小一样,要映射整个图元面积,分配给图元纹理坐标为( ).A(0.0,0.0)(1.0,0.0)(1.0,1.0)(0.0,1.0) B(0.0,0.0)(255.0,0.0)(255.0,255.0)(0.0,255.0)C (0.0,0.0) (0.0,1.0) (1.0,0.0)(1.0,1.0) D(0.0,0.0) (0.0,255.0) (255.0,0.0)(255.0,255.0) ★考核知识点:纹理的高级技巧

(92)三维纹理图像可以看成是由一层一层的二维子图像矩阵构成的,在内存中,这些矩形按顺序排列在一起。( )

★考核知识点:纹理的高级技巧 (93)对函数void glTexImage3D( Glenum target, Glint level,GlintinternalFormat ,Glsizeiwidth,Glsizeiheight,Glsizeidepth,Glintborder,Glenumformat,Glenum type, constGlvoid * texels );参数描述正确的是( ) A level是纹理目标在内存中的优先级 Blevel是mipmap细节层的序号 C level描述了纹理的强度程度 D描述了纹理的有效值取值范围

★考核知识点:纹理的高级技巧

(94)glCopyPixels()函数,但是并不把像素读到缓冲区,而是放在纹理内存中( )

★考核知识点:纹理的高级技巧

(95)对OpenGL实现的Mipmap描述正确的是( )

A它必须根据被贴图的物体的大小手动的确定应该使用哪个纹理 B它会根据被贴图的物体的大小自动确定应该使用哪个纹理 C Mipmap不需要一些额外的计算

D Mipmap并不需要额外的一些纹理存储区域

★考核知识点:纹理的高级技巧

(96)glPixelStore*( )函数可以用于设置像素存储模式,使用诸如*ROW_LENGTH、*ALIGNMENT、*SKIP_PIXELS和*SKIP_ROWS这样的参数。这个函数用于控制对一个完整的像素或纹理单元矩形的一个子矩形的引用( )

★考核知识点:纹理的高级技巧

(97)一个带有纹理图像的物体迅速的远离观察点而去时,纹理图像必须随必须被投影的图像一起缩小。为了避免闪烁抖动等人工痕迹,可以指定一系列预先过滤的分辨率递减的纹理图像称为( )

A Vertex Shader B mipmap C HLSL D Cg ★考核知识点:纹理的高级技巧

(98)void glTexParameteri 第三个参数类型为GL_CLAMP描述正确的是

A将大于1.0的数值设置为1.0,将超出[0.0,1.0]范围的数值截取到[0.0,1.0]范围内 B这样会导致纹理边缘的重复 C将小于0.0的数值设置为0.0 D图象在物体表面上不断重复,但是每次重复的时候对图象进行镜像或者反转 (99)纹理坐标比一定非要在RGBA模式下才可以能使用( )

★考核知识点:纹理的高级技巧

(100)void glTexParameteri 第三个参数类型为GL_REPEAT描述正确的是A A图象在表面上重复出现

B自动将超出[0.0,1.0]范围的数值截取到[0.0,1.0]范围内

C图象在物体表面上不断重复,但是每次重复的时候对图象进行镜像或者反转 D这样的模式在纹理边缘处比较连贯

★考核知识点:纹理的高级技巧

(101)对函数glTexParameteri边界截取类型描述正确的是( )

A GL_CLAMP_TO_EDGE B CLAMP_TO_BORDER_ARB C GL_REPEAT D GL_CLAMP ★考核知识点:纹理的高级技巧

二、主观部分:(程序设计,简答题)

1关于现实字体的一段程序如下,运行截图如下,现有若干空缺,请完成填空。

我们完成创建字体的功能函数CreateFont() 如下:

HFONT hFont; HFONT hOldFont; iBase=glGenLists(256); hFont=CreateFont(

-24, 0, 0, 0,

//高度 //宽度 //旋转角度 //定位角 //字宽设置 FW_BOLD, FALSE, FALSE, FALSE, ANSI_CHARSET, OUT_TT_PRECIS,

CLIP_DEFAULT_PRECIS, ANTIALIASED_QUALITY, FF_DONTCARE|DEFAULT_PITCH, \"Courier New\" );

//使用字体名称为Courier New //保存之前的字体

hOldFont=(HFONT)SelectObject(hdc,hFont); //从系统下载的字体文件中生成这些位图

wglUseFontOutlines(hdc,32,96,iBase,0.0,0.2f,WGL_FONT_POLYGONS,gmf); //还原设备句柄为hdc,还原原来的字体类型 SelectObject(hdc,hOldFont); //释放资源

DeleteObject(hFont); 2.关于二次曲面的一段程序如下,运行截图如下,现有若干空缺,请完成填空。

我们生成二次曲面的功能函数如下: //二次曲面的生成状态 GLUquadric *Quadric; //创建一个二次方程对象,指定这个二次方程对象的属性 Quadric = gluNewQuadric(); //自动为二次表面生成纹理坐标 gluQuadricTexture(Quadric,GL_TRUE); //显示灯的列表 iLamp = glGenLists(1); glNewList(iLamp,GL_COMPILE); //激活纹理0地板的纹理

glBindTexture(GL_TEXTURE_2D,texture[2]); //绑定纹理

glBindTexture(GL_TEXTURE_2D,texture[2]);

2.如下一段程序,运行完成加载纹理的功能,现在有若干空缺,请根据上下文完成填写。

程序截图1 LoadTexture() {

);

glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR_MIPMAP_LINEAR

glPixelStorei(GL_UNPACK_ALIGNMENT,4); //绑定纹理

glBindTexture(GL_TEXTURE_2D,m_nBodyTex);

glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR); //BMP文件的handle HBITMAP hBMP; //存储BMP的数据结构 BITMAP BMP; byte Texture[1]={IDB_MISSILE}; //产生三个纹理

glGenTextures(1,&m_nBodyTex); hBMP=(HBITMAP)LoadImage(GetModuleHandle(NULL),MAKEINTRESOURCE(Texture[0]),

IMAGE_BITMAP,0, 0, LR_CREATEDIBSECTION);

if(hBMP) { GetObject(hBMP,sizeof(BMP),&BMP);

//构建二维Mipmap gluBuild2DMipmaps(GL_TEXTURE_2D,3,BMP.bmWidth,BMP.bmHeight,

GL_BGR_EXT, GL_UNSIGNED_BYTE, BMP.bmBits); //删除位图资源

}

3.如下一段程序,运行完成物体颜色和材质属性相关功能,现在有若干空缺,请根据上下文完成填写。 DeleteObject(hBMP);

}//if

程序截图1 在进行光照和材质相关的计算时,需要先进行必要设置操作,我们需要进行如下操作:

{ glClearColor(1.0,1.0,1.0,1.0); voidInitScene( )

//设置明暗处理模型 glShadeModel(GL_SMOOTH); //glShadeModel(GL_FLAT); //开启深度测试

glEnable(GL_DEPTH_TEST); glDepthFunc(GL_LEQUAL); glClearColor(0.0f,0.0f,0.0f,0.0f); glClearDepth(1.0f); //使光源生效

glEnable(GL_LIGHTING); //设置环境光

GLfloatambientLignt[]={0.8,0.7,0.9,1.0}; glLightModelfv(GL_LIGHT_MODEL_AMBIENT,ambientLignt); //设置材料属性,自身的反光属性 GLfloatShinine[]={80.0}; //镜面强度,白色

GLfloatSpecular[]={1.0,1.0,1.0,1.0}; //设置材质颜色属性

GLfloatMatColor[]={0.9,0.9,0.9,1.0}; //光源位置

GLfloatPostion[]={1.0,1.0,1.0,0}; //具体设置GL_FRONT_AND_BACK

//GL_FLAT

glMaterialfv(GL_FRONT,GL_SPECULAR,Specular); glMaterialfv(GL_FRONT,GL_SHININESS,Shinine); //设置光照模型

glLightfv(GL_LIGHT0,GL_POSITION,Postion); //给光源设置位置*/ glLightfv(GL_LIGHT0,GL_SPECULAR,MatColor); //给镜面光设置颜色 glLightfv(GL_LIGHT0,GL_DIFFUSE,MatColor); //设置漫反射颜色 //开启光照特征 glEnable(GL_LIGHT0);

}//endfnc 4.如下一段程序,运行完成雾化功能,现在有若干空缺,请根据上下文完成填写。

程序截图1 { //Get FPS void DrawScene() if( GetTickCount() - g_dwLastFPS >= 1000 )

glClear(GL_COLOR_BUFFER_BIT); glLoadIdentity(); //设置位图

glPixelTransferf(GL_RED_SCALE, 1.0); {

g_dwLastFPS = GetTickCount();

char szTitle[256]={0};

sprintf( szTitle, \" Current %d FPS\", g_nFrames ); SetWindowText( hwnd, szTitle ); g_nFrames = 0;

}//if g_nFrames++;*/ glPixelTransferf(GL_GREEN_SCALE, 0.0); glPixelTransferf(GL_BLUE_SCALE, 0.0); glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); glEnable(GL_BLEND); glFlush(); }//endfnc //初始化操作

五、简答题(共15 分)

关于构建一个立体曲面的程序有如下截图,程序有部分功能空缺,请完成

//渲染场景 void DrawScene() { //调用显示列表进行渲染

glCallList(drawlist); if( showCPoints ) {

//禁止纹理

glDisable(GL_TEXTURE_2D);

glColor3f(1.0f,0.0f,0.0f);

for( i=0;i

//绘制控制点

glBegin(GL_LINE_STRIP); for( j=0;j

}//for glEnd(); }//for for( i=0;i

glBegin(GL_LINE_STRIP); for(j=0;j

glVertex3d(pCtrData[j][i].x, pCtrData[j][i].y,pCtrData[j][i].z); glEnd(); }//for glColor3f(1.0f,1.0f,1.0f); //启用纹理

glEnable(GL_TEXTURE_2D);

}//if glFlush();

}//endfnc

2.关于现实Bezier曲线的一段程序如下,运行截图如下,关于功能现有部分空缺,请完成。

intInitScene( ) {

glShadeModel(GL_SMOOTH);

glClearColor(1.0f, 1.0f, 1.0f, 0.5f); //设置清空颜色为白色 glClearDepth(1.0f);

//初始化深度缓存最大为 1.0f //开启深度测试 glEnable(GL_DEPTH_TEST); glDepthFunc(GL_LEQUAL); glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); //开启求值器

glEnable(GL_MAP1_VERTEX_3); //设置控制点的类型,起始位置从0-100,控制点数目为4,跨度为3 //点的存储数组为B_Points[4][3]

} glMap1f(GL_MAP1_VERTEX_3,

0.0f, 100.0f, 3,

//起始 //终止范围

//点数目 iNumPoint,

&B_Points[0][0]); //均匀分布网格,有100个单位,从u1到u2 glMapGrid1d(100,0.0,100); return TRUE;

boolDrawScene( ) {

glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glLoadIdentity(); glTranslatef(0,0,-20.0f); inti; //设置点的尺寸大小为 10 glPointSize(10); //设置控制点为红色 glColor3f(1.0,0.0,0.0); glBegin(GL_POINTS);

for ( i=0;i

{ glVertex2fv(B_Points[i]); }//for glEnd(); return true;

}//DrawScene 3.关于实现光照效果对比的程序。左图为加光照,右边为未加光照。部分功能空缺,请完成

void DrawScene() { GLfloat spotPostion[]={0.0,0.0,1.0,1.0};

//清空缓冲区

glClear(GL_COLOR_BUFFER_BIT |GL_DEPTH_BUFFER_BIT ); glLoadIdentity();

glPushMatrix(); glColor3f(1.0,0.0,0.0); glRotatef(fRot, 1.0f, 0.0f, 0.0f); //使用灯光

glLightfv(GL_LIGHT2,GL_POSITION,spotPostion); glLightfv(GL_LIGHT2,GL_SPOT_DIRECTION,spotDir); glTranslatef(spotPostion[0],spotPostion[1],spotPostion[2]); glutSolidCone(0.05f,3.0f,15,15); glPopMatrix(); glTranslatef(0,0,-6.0); //glRotatef(fRot,1,0,0); //绕y轴旋转60° glRotatef(60,0,1,0); //属性堆栈压栈

// glPushAttrib(GL_LIGHTING_BIT); // glDisable(GL_LIGHTING);

glColor3f(1.0f,1.0f,1.0f); glBegin(GL_TRIANGLES); //计算法线一

calNormal(vTrangle1,vector); glNormal3fv(vector);

glVertex3fv(vTrangle1[0]); glVertex3fv(vTrangle1[1]); glVertex3fv(vTrangle1[2]); glFlush(); }//endfnc

第20篇:软件设计大赛策划书

西安财经学院信息学院

软件设计大赛

信息学院团工委2012年10月9日

信息学院软件设计大赛策划书

主办方:西安财经学院校团委

承办方:信息学院团工委 信息学院科技联盟

一、活动背景:

为了深入贯彻“素质、技能、自学”的六字方针,正确引导我校同学积极参加科技创新活动,不断培养创新精神和团队意识,切实增强理论联系实际的能力,通过富有自由、开放、创新精神的大赛,为广大同学提供一个提高自我、展示才华的平台,并且通过这一平台,结交更多优秀的人才,提高广大同学的学习积极性、创新意识和勇于实践的科学精神。校园科技文化节是一个交流文化,学习技能的好机会,是展现西安财经学院学子良好风采的不二之选。

二、活动主题:

演绎精彩·创意无限

三、活动目的:

科技文化节旨在服务同学,展现学院风采,培养健康生活方式,宣传化学文化,进一步深化校园文化建设,激发大学生创新意识与科研探究热情,营造活跃、浓郁的科学和人文精神氛围,提高学生学以致用的能力。

第一:培养科学研究精神,提高实践创新能力,为学生提供一个发掘自身潜能的平台,通过参赛培养学生的创新意识,竞争精神及实际动手的能力。达到选拔一批、带动一批、影响一大片的效果。

第二:创建一流校风、学风,丰富学生的校园生活,发挥当代大学生的创造力,提高广大学生的电脑技术水平。充分展示大学生的精神文明建设,体现西安财经学院精神文明建设成果,丰富在校大学生的课余生活。

第三:激发我校学生学习计算机科学技术知识的热情,检验动多媒体设计的水平。为在校学生提供一个挑战自我的个机会。

第四:强化同学们计算机操作技能的提高,进一步加强同学们对计算机应用广泛性和实用性的了解。推动多媒体产品的应用,提高学生的实际开发能力,加速软件后备人才的培养。

四、活动时间:

前期宣传2012年10月中旬

活动阶段2012年11月中旬——2013年5月末

五、报名方式:

1、固定地点:西安财经学院长安校区二食堂门口。

2、由各个班级统一下发报名表,统一报名。

六、活动对象: 西安财经学院长安校区全体学生

七、参赛要求:

(一)作品类型:

手机游戏,软件开发,Web设计,电子商务,论坛,办公软件, 应用软件, 游戏娱乐

(二)作品内容:

1) 作品内容健康,丰富科学,结构清晰、创意新颖,设计技术先进。不

得违反国家的有关法律、法规和规定。

2) 作品必须是独立的软件,具备可演示的运行环境,可演示的用户界面

(图形用户界面,Web界面或者命令行界面等)。

3) 提交内容为作品源代码、编译安装脚本、版权说明及相关设计文档

(如:PPT文档,不超过一页的摘要;项目规格书,包括创作思路,应用领域等;分析设计文档,描述设计架构,模块功能描述,相关依赖软件的说明等);作者应自行保留备份,提交的作品不予退回。

4) 提交的作品应实现设计文档中描述的基本功能,能正确运行,并给出

正确结果。

5) 作者必须确保作品软件和相关文档无任何知识产权纠纷,若存在任何

知识产权纠纷则取消参赛资格,并由作者个人承担相应责任。

6) 作品须为自己创作,如发现作品属于抄袭、克隆行为,一经发现,组

委会将取消参赛者的评奖资格。

八、活动流程:

(一)组织发动阶段(2012年10月中旬)

2012年10月初,向各院下发比赛通知、参赛规则和报名表等,各院采取各种形式对大赛进行宣传动员。同时在启动仪式是通过计算机作品展示吸引大家兴趣。

(二)统一报名阶段

在文化节启动的开始,启动统一报名,针对所有的大赛进行规范合理

的统一报名。(报名持续一个礼拜)

(三)作品准备阶段

2012年11月份,2013年

1、2月份,报名参赛的选手可利用这二

(三)个月的时间包括节假日,自行进行软件设计制作。3月上旬,将对推荐参加软件设计大赛的作品以电子版的形式并报送至信息学院团工委,由大赛评审委员会对参赛作品进行分类及作品的参赛资格和形式审查和前期测试,不合格的作品(包括非原创的作品)通报后取消参赛资格。

(四)评审准备阶段

1、3月末,由专家组成评审委员会,根据《评审实施细则》进行评审,通过测试,择优选出约三分之一作品进入决赛。

2、5月末,由专家组成评审委员会,根据《评审实施细则》进行评审,通过测试,择优选出约三分之一作品进入决赛。

(五)终评阶段

参加终评决赛的个人或小组进行顺序抽签,现场演示及答辩(每个作品的答辩时间为3-8分钟)。由评委会打分最终确定各奖项获得者。

(六)、评分标准

1、作品创意:软件要创意新颖,实用性强。

2、设计科学:软件开发符合软件工程思想,算法设计合理。

3、运行效果:作品要界面美观,运行稳定,使用方便,可操作性强。

4、汇报表现:汇报要思路请示、表达清楚,回答问题准确。

八、经费预算:

打印费用300 元

宣传海报200 元 横幅300 元 服装、化妆费400 元 布置教室200 元 茶叶纸杯50元 奖品1000荣誉证书200 机动费200

总计2850元 元 元 元

信息学院团工委2012年10月9日

《多媒体教学软件设计.doc》
多媒体教学软件设计
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

相关推荐

实施方案自查报告整改措施先进事迹材料应急预案工作计划调研报告调查报告工作汇报其他范文
下载全文