基于authorwarec语言程序设计多媒体系统.docx
《基于authorwarec语言程序设计多媒体系统.docx》由会员分享,可在线阅读,更多相关《基于authorwarec语言程序设计多媒体系统.docx(23页珍藏版)》请在冰豆网上搜索。
基于authorwarec语言程序设计多媒体系统
C语言课程多媒体演示系统
摘 要:
在如今的信息时代里,多媒体电脑日新月异,多媒体的功能也越来越强大。
多媒体教学也越来越接近生活,为我们在工作、学习和生活中提供了很多方便。
本次设计是为“”这门课程做一个交互式教学(CAI),采用的是authorware7.0这个软件,它是基于创作图标和程序流程线设计结构的一个软件,适合Windows和Macintosh两种平台开发环境,可用于制作多媒体教学系统、多媒体信息浏览系统和多媒体电子出版系统、多媒体模拟训练系统等各种多媒体应用软件。
本次利用authorware7.0制作的多媒体课件里,加入了声音、动画、文字等多种信息,还可以与交流对象互动,自动回答一些常见问题。
这样的多媒体课件可以充分调动用户的积极参与,大大提高了演示质量、效率。
本文将对系统的需求分析、主要技术原理、开发环境、以及主要功能的实现等几个方面进行详细论述,此外还对设计过程中遇到的问题、解决方法及经验进行仔细的总结。
关键字:
c语言课程;Multimedia;交互式教学;Authorware;教学课件;CAI;
Abstract
TheCProgrammingLanguageMultimediaSystem
Inthetimesofinformation,themultimedia-computerhaschangedveryquicklyandthecapabilityofmultimediahasbecomeverypowerfultoo.Thewaytoteachingwiththemultimediahasbeenclosetothedailylifedaybyday.Ithasmadeagreatdealofconveniencetous.
ThisdesignisaCAIfortheclassof《servicingandmaintenanceofcomputer》andImadeitwiththesoftwareofauthorware6.0.Thesoftwarebasesontheiconofdesignandprogramflowstructure.ItadaptstowindowsandMacintoshthetwoexploitationenvironmentsanditcanbeusedtodesignmultimediateachingsystem,multimediainformationbrowsesystemandmultimediaelectronpublishsystem,multimediasimulatepracticesystemandmanykindsofmultimediaapplicationsandsoon.
Wehaveaddedsounds,cartoon,wordsandmuchotherinformationinthedesignthatmadewithauthorware6.0.Itcancommunicatewithmanyobjectsandanswerssomeordinaryquestionsauto.Thiskindofdesignthatismadewithmultimediahastheabilitytoemploytheinitiativeofusers.Ithasimprovedthequalityandtheefficiencyofthedemo.
Thisarticlewillparticulardiscussthedemandanalyze,maintechnique
principle,developmentenvironmentandtheachievingofsomemainfunctions.Besides,wehavesummarizedcarefullytotheproblemsthathadmetwithwhiledesigning,thewaytosolvetheproblemsandsomeexamines.
Keywords:
serviceandmaintenanceofcomputer;Multimedia;alternatedteaching;Authorware6.0;coursewareforteaching;Cai。
引言-20-
第一章多媒体演示系统的概述-20-
1.1多媒体研究系统的目的和价值-20-
1.2本课题在国内外的研究状况及发展趋势-20-
第二章课件内容介绍-21-
2.1数组-21-
2.1.1一维数组-21-
2.1.2二维数组-22-
2.1.3字符数组-22-
2.1.4程序举例-22-
2.2结构体与共用体-23-
2.2.1定义一个结构-23-
定义一个结构-23-
2.2.2结构数组的定义-23-
2.2.3结构指针变量的说明和使用-23-
2.2.4动态存储分配、链表的概念-23-
2.2.5枚举类型-24-
2.2.6类型定义符typedef-24-
第三章 系统分析-25-
3.1 系统功能-25-
3.2 系统需求分析-25-
3.3 设想-26-
3.4 使用对象-26-
第四章详细设计-26-
4.1 设计前的准备工作-26-
4.2 设计过程-26-
1.检测分辨率-26-
2、基本变量、声音控制、片头动画-27-
3、声音控制-28-
4、片头设计-30-
5、 主程序群组-31-
6、flash的制作-33-
7、特色有声音的控制、分辨率的实现、菜单的实现方式等方面-33-
第五章 遇到的问题及解决方法和调试-34-
1、装载外部扩展函数alTool.u32。
-34-
2、声音控制的实现-34-
3、菜单的实现-34-
4、系统的调试-35-
小结-35-
谢辞-36-
参考文献-20-
引言
在课堂教学中,一个功能完善、界面美观的多媒体展示系统既能够一改以往板书教学的枯燥乏味,充分调动学生的学习积极性,又能够有效地减轻教师挥笔疾书的工作量,做到鼠标一点,图文并茂的内容尽展现眼前,加上全程的语音配读和部分的视频播送,亦可用于网上教学这一正在兴起的领域。
而C语言是近年来被迅速推广使用的一种现代语言,它功能丰富、表达能力强,应用面广,不少高等学校,不仅在计算机专业开设了C语言的课程,而且在非计算机专业也开始开设该课程。
许多人已经用它编写一般应用软件。
学习C语言已成为广大计算机应用人员和初学者的迫切要求。
更值得注意的是,国家教育部提出了加强大学本科教学的12项措施,其中要求各高校在三年内开设5%-10%的双语课程,并引进原版教材和提高师资水平。
如果能将一本优秀的C语言教材中英版和多媒体展示系统结合起来,不仅符合了这样一种双语教学的趋势,还能为其教学方面提供更加灵活的授课辅助工具。
第一章多媒体演示系统的概述
1.1多媒体研究系统的目的和价值
1959年美国IBM公司研制成功了第一个计算机辅助教学(CAI)系统,从而宣告人类开始进入计算机教育应用时代。
目前,计算机辅助教学已经成为人们非常熟悉地名词,它不仅仅是一项重要的技术,而且代表了一个十分广阔的计算机应用领域。
CAI指的是以计算机为主要教学手段所进行的教学活动,使“学”与“教”得到更好的统一。
多媒体技术的应用加强了用户对所提供数据的记忆。
因为多媒体的一大特征就是信息量大,而且直观。
使用多媒体创建的友好界面也降低了软件的学习曲线,赋予了用户更多的权利,从而增加了用户的兴趣。
是对课堂教学的极大的补充,为学生提供了课下自主学习的平台。
对课堂教学是个良好的补充。
近几年来我们学校的教学硬件设施有了很大的改变,而教学软件设施却没有跟上硬件设施的改善速度。
为了推进我们学校的教学成绩的提高,我们不仅要加强课堂教学,采用各种多媒体技术提高课堂效率;更应该提供给同学们一个自主学习的空间,应该多开发一些多媒体系统供同学们自主学习用。
1.2本课题在国内外的研究状况及发展趋势
多媒体技术从问世起,就引起教育界有识之士的充分关注。
就目前的情况而言,我国的多媒体教育工作尚处于起始阶段。
随着以计算机为核心的多媒体数据库和基于内容检索的多媒体辅助教学的广泛应用,多媒体课件的开发、利用正越来越被广大出版部门、学校和教师所重视,各地也兴起了设计、制作多媒体课件的热潮。
绝大多数多媒体课件都是采用Authorware、方正奥思或Powerpoint、洪图等平台制作的,这些课件自然有其独有的优势,但其有一个共同的缺憾:
课件仅限于单机上运行,因而它们都属于演示型课件,以教师操作为主,学生鲜有动手操作的机会,这样便在某种程度上妨碍着学生自主性学习,不利于学生个性张扬,创新实践能力的培养。
伴随着网络时代的到来,网络知识的普及,硬件、课件的网络化就显得更加重要。
课件能否在网络环境中运行,是否在教育教学过程中具有辅助功能,势必成为衡量一个优秀多媒体课件的重要条件。
网络课件资源的共享势必推动课件本身的发展,作为课件制作者,必须加强自身现代教育信息技术的学习,以适应信息时代教育革命的趋势,进而进一步推动教育教学改革的不断前进!
近些年来,随着计算机硬件技术的发展,多媒体技术也异军突起地发展起来了,其中,authorware就是目前非常流行的一款多媒体程序开发软件。
“authorwarer到底能做什么?
”这几乎是每一个初学者都要提出的一个问题,可以这样说:
如果你是教师,它可以帮助你开发多媒体课件;如果你是职员,它可以帮助你制作演讲文稿;如果你是企业员工,它可以帮助你制作企业与产品介绍;如果你是学生,它可以帮助你制作电子简历;如果你是一名电脑爱好者,它可以帮助你制作电子相册、开发小游戏……
Flash是一种创作工具,设计人员和开发人员可使用它来创建演示文稿、应用程序和其它允许用户交互的内容。
Flash可以包含简单的动画、视频内容、复杂演示文稿和应用程序以及介于它们之间的任何内容。
它不仅能够制作出许多眩目多彩的效果,只要你肯赋予它一定的情景,它也会模拟出现实生活中的场景。
Flash和Authorware的比较:
Authorware交互曾是它卓越的优势,刚刚从熟练的编程环境中跳出来的图标显示,一开始就让人们感受到课件的亲切,然而Authorware无法精确或者艺术地表现图、文甚至动画的创造价值, 图、文、音、视、动、色都必须依赖其它更加专业的软件才能成为Authorware编辑的素材,Authorware并不是一个独立多媒体创意工具,充其量不过是一个形象化的编程方式罢了,人们不停埋怨多媒体课件创作的艰难,还有Authorware的“超豪华阵容”及巨大的体积在网络环境面前一下子就望而却步了。
而Flash不停地升级,已成为今天多媒体教学及课件制作的一个大趋势!
低开发建设成本和高开发建设效率。
目前,前面所述的各种Flash教育资源多数属于免费和低费用资源,而且基本上都是在网络上流通,资源的合作开发、搜集、链接和应用十分方便高效。
可以多种方式被高版本的Authorware、Director、Dreamweaver、FrontPage等网络多媒体集成工具应用,集成在多媒体课件或教学网页中。
毫无疑问,我们已立于教育信息化的潮头之上,教育信息化的前景将更将灿烂。
这不仅是现代教育发展的必然,也是我们义不容辞的历史重任。
因此选择Flash和Authorwar作为课件制作工具倍受青睐
第二章课件内容介绍
2.1数组
2.1.1一维数组
①一维数组的定义
在C语言中使用数组必须先进行定义。
一维数组的定义方式为:
类型说明符数组名[常量表达式];
其中:
类型说明符是任一种基本数据类型或构造数据类型。
数组名是用户定义的数组标识符。
方括号中的常量表达式表示数据元素的个数,也称为数组的长度。
②一维数组的引用
③一维数组的初始化
④一维数组的举列
数组作为函数参数:
(1)数组元素作为参数。
Flash演示。
(2)数组元素作为函数参数。
Flash演示。
⑤一维数组的应用举列
N个数从小到大排序flash演示。
2.1.2二维数组
①二维数组的定义
②二维数组元素的引用
③二维数组的初始化
④二维数组程序举例
2.1.3字符数组
①字符数组的定义。
②字符数组的初始化。
③字符数组的引用。
④字符串和字符串结束标志。
⑤字符数组的输入输出
2.1.4程序举例
字符串的删除flash演示。
2.2结构体与共用体
2.2.1定义一个结构
定义一个结构的一般形式、结构类型变量的说明、结构变量的初始化
2.2.2结构数组的定义
数组的元素也可以是结构类型的。
因此可以构成结构型数组。
结构数组的每一个元素都是具有相同结构类型的下标结构变量。
在实际应用中,经常用结构数组来表示具有相同数据结构的一个群体。
如一个班的学生档案,一个车间职工的工资表等。
方法和结构变量相似,只需说明它为数组类型即可。
例如:
structstu
{
intnum;
char*name;
charsex;
floatscore;
}boy[5];
2.2.3结构指针变量的说明和使用
①指向结构变量的指针。
②指向结构数组的指针。
③结构指针变量作函数参数
2.2.4动态存储分配、链表的概念
用变量表示长度,想对数组的大小作动态说明,这是错误的。
但是在实际的编程中,往往会发生这种情况,即所需的内存空间取决于实际输入的数据,而无法预先确定。
对于这种问题,用数组的办法很难解决。
为了解决上述问题,C语言提供了一些内存管理函数,这些内存管理函数可以按需要动态地分配内存空间,也可把不再使用的空间回收待用,为有效地利用内存资源提供了手段。
常用的内存管理函数有以下三个:
1.分配内存空间函数malloc
调用形式:
(类型说明符*)malloc(size)
功能:
在内存的动态存储区中分配一块长度为"size"字节的连续区域。
函数的返回值为该区域的首地址。
“类型说明符”表示把该区域用于何种数据类型。
(类型说明符*)表示把返回值强制转换为该类型指针。
“size”是一个无符号数。
例如:
pc=(char*)malloc(100);
表示分配100个字节的内存空间,并强制转换为字符数组类型,函数的返回值为指向该字符数组的指针,把该指针赋予指针变量pc。
2.分配内存空间函数calloc
calloc也用于分配内存空间。
调用形式:
(类型说明符*)calloc(n,size)
功能:
在内存动态存储区中分配n块长度为“size”字节的连续区域。
函数的返回值为该区域的首地址。
(类型说明符*)用于强制类型转换。
calloc函数与malloc函数的区别仅在于一次可以分配n块区域。
例如:
ps=(struetstu*)calloc(2,sizeof(structstu));
其中的sizeof(structstu)是求stu的结构长度。
因此该语句的意思是:
按stu的长度分配2块连续区域,强制转换为stu类型,并把其首地址赋予指针变量ps。
2.释放内存空间函数free
调用形式:
free(void*ptr);
2.2.5枚举类型
①枚举类型的定义和枚举变量的说明。
②枚举类型变量的赋值和使用
2.2.6类型定义符typedef
C语言不仅提供了丰富的数据类型,而且还允许由用户自己定义类型说明符,也就是说允许由用户为数据类型取“别名”。
类型定义符typedef即可用来完成此功能。
例如,有整型量a,b,其说明如下:
inta,b;
其中int是整型变量的类型说明符。
int的完整写法为integer,为了增加程序的可读性,可把整型说明符用typedef定义为:
typedefintINTEGER
用typedef定义数组、指针、结构等类型将带来很大的方便,不仅使程序书写简单而且使意义更为明确,因而增强了可读性。
例如:
typedefcharNAME[20];表示NAME是字符数组类型,数组长度为20。
然后可用NAME说明变量,如:
NAMEa1,a2,s1,s2;
完全等效于:
chara1[20],a2[20],s1[20],s2[20]
第三章 系统分析
3.1 系统功能
该课件最大的特色就是载入了大量的图片、声音、动画,文本,广泛的使用了多媒体素材,让读者更形象,生动的去学习。
在与用户人机交互时,提供了按钮、鼠标、限时等一些响应方式,可以跟踪用户的动作和反应。
3.2 系统需求分析
在运行该软件时,要确定计算机系统是否符合系统最低需求,如不能达到要求,软件将不能正常运行。
1、 CPU:
带有协处理器的芯片即可。
奔腾系列比较好,因为它浮点运算性能好。
此软件往往与其他配套软件联合使用方能发挥最大效用,因此一旦带动大量的声音、图像文件运行,同时运行其他软件以后,CPU运算量非常大了。
注意要挑选好配套主板,这很重要。
如果只注重内存和CPU,电脑配置就像一个火车头安了一副木质轮子似的,无法发挥正常水平。
正常水平。
而且目前许多厂家已经把声卡与显卡固化在主板上,因此,主板选择的好坏关系到以后工作的开展。
2、 内存:
对内存的要求最低运行环境为128M,256M以上比较合适,运行视频文件较多时,宜选用高档内存。
3、 硬盘:
软件运行起来需要100M左右的空间用于存取缓存文件,它本身及生成文件所占空间也很大,硬盘要留有足够的空间。
目前的大容量硬盘很便宜,选用20G以上的大容量硬盘可以大量储存各种音像素材。
如果大量使用视频文件,最好使用高速硬盘,采用高速硬盘不易死机,数字信号的存取能够跟上运算,减少运算错码时出现的马赛克,硬盘寿命也有保障。
4、 显卡:
尽量选用高档一些的,起码32M以上,否则无法进行视频编辑。
Authorware默认的作品大小是640X480,一般将作品大小设为800X600。
分辨率设置工作要在开始设计之前就要做好,要是等到程序设计完成之后,再来更改显示大小,那么原来调整好的图片、文字、按钮的位置都将发生变化,重新调整将会很繁琐。
如果用户的显示器的分辨率不是800X600,而是1024X768,这样显示下的作品将不能得到最佳的视觉效果。
这就需要制作的多媒体程序在一开始就检测用户的显示器分辨率,如果不适合,就进行调整。
1024X768分辨率环境下,普通显示器(液晶显示器除外)最低就得17英寸,15英寸的显示器不可能达到1024X768分辨率,即使有个别的可以达到,也会有屏闪现象,这种环境下工作时间久了,对眼睛伤害严重,因此显示器的选择不要太低档。
5、 光驱:
多媒体电脑的必备设备,一般选16倍速以上的。
另外,还可以选择一些硬件和软件,如扫描仪、实时采集卡、刻录机等硬件设备。
可以使用Photoshop软件来辅助生成背景和贴图、加工处理各种图象,AutoCAD、3DSMAX用来辅助造型,MIDI软件编辑声音,非线性编辑软件处理视频图象等等,这样,制作出的多媒体才会丰富多彩、引人入胜。
3.3 设想
目前我做的这个课件还是处于演示浏览的状态,我希望以后我能够更加的完善它,让它能通过互连网在网络中播放,可以达到远程教育的效果。
再者就是我还要完善它的功能,希望能够连接数据库,让它功能更加强大。
3.4 使用对象
我们制作这个课件主要是用来进行多媒体教学的,使读者能够更加形象的学习电脑知识,让他们能够融入到知识的乐趣当中。
其实制作这个课件我的最终想法是想让这门“c语言程序设计教程”生动有趣,不让人感到枯糙,让读者能够提取兴趣来学习这门课程。
它很适合与电脑初学者,使他们一接触电脑就有一种很新颖的感想。
第四章详细设计
该部分主要是我在“c语言程序设计教程”中所要求的功能模块,按照第三章的需求分析进行设计和开发。
并给出具体的代码及流程图以详细说明开发的过程和个模块所能实现的功能。
4.1 设计前的准备工作
由第三章的需求分析对本程序的系统进行了概念分析和设计,在本章中,我主要是实现物理设计,使程序成为一个完整的应用软件。
主程序环境为:
Authorware7.0。
辅助设计环境:
PHOTOSHOP7.0(平面设计);FLASHMX(动画设计)。
4.2 设计过程
1.检测分辨率
(1) 在Authorware7.0环境中,建立新建文件。
存盘文件名为“作品”。
在层1中.
(2) 载入alTools.u32函数,通过alTools.u32函数的变量alChangeRes来实现显示器更改分辨率。
更改文件的属性,选择显示居中,大小为:
800*600(SVGA)。
(3)添加计算图标,取名为:
检测分辨率。
添加框架图标,取名为:
程序框架。
在框架中,添加两个群组,分别为:
主程序群组和设计分辨率。
最后添加END为结束群组。
这样设计的目的是:
能在主程序启动前,能检测电脑显示器所使用的分辨率,如果该显示器设置非本程序所使用的800*600的分辨率,则执行设置分辨率,使软件能完整的显示。
如果该显示器设置的分辨率为800*600。
则进入主程序群组。
运行本程序。
下面,介绍检测分辨率图标的代码如何实现上述功能:
--定义显示器的参数变量分别由定义的三个变量:
N_width,N_height,N_depth三个分别代表显示器的长,宽,颜色。
2、基本变量、声音控制、片头动画
(1)基本变量设置
在层1中设计基本群组图表,进入层2在这个模块中插入计算图表进行基本变量设置,设置如图(2.1)
图(2.1)
(2)接着用交互图标和热区域设计基本窗口布局,如图(2.2)
图(2.2)
3、声音控制
(1)基本处理
在层1中设计基本群组图表“声音控制”,进入层2在这个模块中插入“处理”图表进行“基本”处理设置,在第三层进行细致设置。
这个模块设计的重点是“处理中心”的设计。
设置如图(3.1)
图(3.1)
音量检测的代码如图(3.2)
图(3.2)
播放代码如图(3.3)
图(3.3)
暂停代码如下(3.4)
图(3.4)
停止代码类似。
(2)音量设置
在层1中设计基本群组图表“音量设置”,进入层2在这个模块中插入“音量”图表进行“音量设置”,在第三层进行具体设置。
这个模块设计的重点是“控制”的设计。
设置如图(3.5)
图(3.5)
声音调节代码如下(3.6)
图(3.6)
最小化代码如下(3.7)
图(3.7)
退出代码如下(3.8)
图(3.8)
4、片头设计
在层1中设计基本群组图表“片头”,进入层2在这个模块中进行具体处