《数据结构》实验课教学大纲.doc
目目 录录实验教学大纲实验教学大纲.1数据结构实验课教学大纲.1计算机图形学实验课教学大纲.8操作系统原理实验课教学大纲.13可视化软件开发环境实验课教学大纲.19软件工程实验课教学大纲.27高级语言程序设计实验课大纲.35数据库原理与应用实验课教学大纲.39实践教学大纲实践教学大纲.44数据结构课程设计教学大纲.44数据库原理与应用课程设计教学大纲.48算法分析与设计课程设计教学大纲.52软件工程课程设计教学大纲.56数字图像处理课程设计教学大纲.60计算机图形学课程设计教学大纲.64管理信息系统课程设计教学大纲.68计算机网络原理课程设计教学大纲.72神经网络课程设计教学大纲.76C 语言程序设计课程设计教学大纲.80Web 数据库及应用课程设计教学大纲.84Matlab 程序设计课程设计教学大纲.88-1-实验教学大纲实验教学大纲数据结构实验课教学大纲数据结构实验课教学大纲一、基本信息课程代码:110051实验课程名称:数据结构英文名称:Data Structures课程总学时:72总学分:3.5实验学时:18(其中综合性实验 6 学时)适用对象:信息与计算科学专业本科生二、实验课程的性质与任务数据结构是一门实践性较强的软件基础课程,它在计算机软件教学中起着承上启下的作用。通过实验使学生在基本数据结构的逻辑特性和物理表示、数据结构的选择和应用、算法的设计与实现等方面加深对课程的理解,同时在程序设计方法以及上机操作等基本技能和科学作风方面受到较严格的训练。本实验课多个实验涉及到高级语言程序设计、数据结构、离散数学三门课程的多个章节。通过该实验让学生巩固本课程所学的知识,培养学生的综合多门课程知识解决实际问题的能力,提高学生的数据抽象和组织能力,进一步熟练掌握面向对象的编程思想与程序设计方法,提高学生思维和提出模型、需求分析与实践编程开发的能力。三、实验教学目的与要求(一)、实验的目的与要求:使学生了解程序设计中数据结构的特性,学会在应用中,根据现实世界中的问题选择适当的数据逻辑结构和存储结构以及相应算法,并且培养基本的、良好的程序设计技能。要求:学生在实验前做好预习,实验时教师先讲述实验内容、介绍程序设计原理和基本思路,学生在教师指导下自己操作完成实验。实验完毕由教师验收合格后方可离开,并写好实验报告。(二)、实验的测评要求1、所要提交的材料要求:要求提交电子文档与纸质材料。电子文档包括两部分,一部分是建立程序的工作文件夹(仅将*.obj 删除,留下其余文件)。另一部分电子文档是实验设计报告,实验报告书封面和正文格式要符合仲恺农业技术学院课程设计、实习报告书封面与正文标准格式要求,实验报告内容包含:实验题目、实验的目的与要求、实验内容所涵盖的章节知识、需求分析(要有详细的模板划分及功能说明,即做什么,要求用建模图例,可用 visio 或 uml 等工具绘制)、概要设计(如何做,要求图例)、详细设计、调试分析、测试结果、附录和设计心得体会等。并将该部分电子文档打印成纸质材料提交。全部文档提交时间:期未放假后一周之内,如没有在规定的时间内提交符合要求的材料,则无论卷面分再高,总评也一律不通过。-2-2、源程序要求:一定要按平时上课时的要求,否则退回重做。(三)、实验分组与实验场地要求原则上实验每组人数不得超过 2 人,如果要求的课时内不能如期完成,则要求学生课外自行完成,不得另外占用课时。欢迎学生个人独立完成,同时也欢迎学生提前提交汇报材料进行测评。四、实验项目、内容提要与要求序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注1复数类的定义和实现基本操作3信息与计算科学本科生1掌握使用VisualC+6.0建立 新 工程、添加新类、上机调试程序的基本方法。2 复 习C+的 模版、类定义,类实现 的 方法。3 熟 悉C+的 编程规范,养成良好的编程风格。1【实验实验 1.1】在 VC6 开发环境中建立一个名为 ComplexTest的 Win32 Console Application类型的工程。在工程中添加新类,类名为Complex。【实验实验 1.2】试用 C+的类声明定义“复数”的抽象数据类型。要求(1)用模版类型(不要局限于float,或者double类型)定义它的实部和虚部成员。(2)实现构造函数:缺省的构造函数没有参数;第二个构造函数将构造参数给复数的实部,虚部置为 0;第三个构造函数将两个参数分别赋给复数的实部和虚部。(3)定义获取和修改复数的实部和虚部,以及+、-、*、/等运算的成员函数。(4)定义重载的流函数来输出一个复数。【实验实验 1.3】在 main 函数中,对复数类的构造函数,存取实部虚部,四则运算设计测试代码。要求实现每个操作结果的屏幕打印输出。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-3-2顺序表的操作验证性3信息与计算科学本科生1 掌握顺序表类的声明和实现的方法,能设计一些简单的测例。2 学习在数据结构中自动调整存储空间的函数(ReSize)设计方法。3 熟悉 C+的 编 程 规范,养成良好的编程风格。1【实验实验 1.1】在 VC6 开发环境中建立一个名为 SeqListTest 的 Win32 Console Application类型的工程。在工程中添加新类,类名为SeqList,参照教材(教材 P43-45)输入类代码(注意按照规范),并调试通过。【实验实验 1.2】在 main 函数中添加对 Find、Insert、Remove 等操作的测试代码。测试结果由屏幕打印输出,截图粘贴到实验报告中。【实验实验 1.3】针对插入元素超出顺序表空间大小的问题,设计一个内存空间管理函数,实现功能:(1)能够实现按自动空间大小重新分配内存。(2)将原有元素拷贝到新空间内。(3)释放原有内存空间。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-4-序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注3稀疏矩阵(三元组表)验证性、基本操作3信息与计算科学本科生1.理 解 采用三元组表存储结构表示的稀疏矩阵的方法。2.掌 握 稀疏矩阵类的声明和主要操作:构造、转置、加法运算、乘法运算。3.熟悉C+的编程规范,养成良好的编程风格。1【实验实验 1.1】在 VC6 开发环境中建立一个名为 SparseMatrixTest的 Win32 Console Application 类型的工程。在工程中添加两个新类,类 名 为 SparseMatrix、Triptule,类代码可参照本指导书中的附录。【实验实验 1.2】在 SparseMatrix 类中设计一个加法函数,实现稀疏矩阵的加法功能,接口如附录中的。【实验实验 1.3】在 main 函数中添加对转置、加法、乘法等操作的测试代码。测试结果由屏幕打印输出,截图粘贴到实验报告中。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过4单链表(带头节点)验证性、基本操作3信息与计算科学本科生1.理解以复合类方式定义单 链 表 类(带 头 节点,类名为LinkList)的方法。2.掌握单链表类的声明和主要操作:构造、插入,删除、查找;3.熟悉 C+的编程规范,养成良好的编程风格。了解 VC 环境下内存泄露 检 测 方法。1【实验实验 1.1】在 VC6 开发环境中建立一个名为 ListTest 的 Win32 ConsoleApplication 类型的工程。在工程中添加两个新类,类名为 LinkList、LinkNode,类声明代码可参照本指导书中的附录。【实验实验 1.2】参照附录中 LinkList、LinkNode 类声明,实现其对应的所有类方法实现代码,可参考教材 P77-78。【实验实验 1.3】在 ListTest.cpp 文件中输入对 LinkList 类的测试代码,(可参考附录中的 main 函数)。测试结果由屏幕打印输出,截图粘贴到实验报告中。【实验实验 1.4】拷贝附录中的debug_new.cpp 为一个 cpp 文件,复制到本工程目录,并在开发环境的FileView 中添加为项目文件。该文件包含了用于检测内存泄漏问题代码。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-5-序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注5栈及其应用*验证性3信息与计算科学本科生1.理解栈的LIFO 操作特点。2.掌握采用顺序存储结构的栈类的声明和实现之方法。3.了解栈类在括号检查方面的应用。1【实验实验 1.1】在 VC6 开发环境中建立一个名为 StackTest 的 Win32 ConsoleApplication 类型的工程。在工程中添加新类,类名为 Stack,类代码可参照教材 P104-105。调试通过。【实验实验 1.2】编写一个编写一个 Complier(编编译器译器)类类,类声明如附录所示,要求在类中实现一个括号匹配检查算法,算法思想如下:检查一个算术表达式中使用的括号是否正确,应从下面两个方面考虑:(1)左右括号的数目应该相等;(2)每一个左括号都一定有一个右括号与之匹配。括号作用域检查的原则是,对表达式从左到右扫描。当遇到左括号时,左括号入栈;当遇到右括号时,首先将栈顶元素弹出栈,再比较弹出元素是否与右括号匹配,若匹配,则操作继续;否则,查出错误,并停止操作。当表达式全部扫描完毕,若栈为空,说明括号作用域嵌套正确,反之,说明表达式有错误。【实验实验 1.3】写出算法后,写出测试写出测试代码代码,对表达式:8-(x*(x+y)/(i-4)+y)/5-2)作括号匹配检查。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过6*递归程序(选做)验证性3信息与计算科学本科生1.理解递归的概念。2 掌握采用递归过程解决递归问题的方法。1【实验实验 1.1】在 VC6 开发环境中建立一个名为 RecurveTest 的Win32 ConsoleApplication 类型的工程。在工程中添加新类,类名为 RecurveArray,类代码可参照附录。调试通过。【实验实验 1.2】阅读指导书附录中MaxKey函数,用递归算法实现类中的 Sum,Average 函数。【实验实验 1.3】编写测试代码,对1.2 中的函数做测试。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-6-序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注7二叉树类综合性实验6信息与计算科学本科生1.理解二叉链表 构 造 二 叉树类的方法。2.理解二叉链表 存 储 结 构下,前序、中序、后序、层序 遍 历 二 叉树的算法。3.掌握采用递归 解 决 二 叉树 相 关 算 法的方法。4.复习巩固高级 语 言 程 序设 计 课 程 内容 中 类、模板、函数、递归等知识点;5.复 习 巩 固离散数学课 程 中 树 的相关知识。1【实验实验 1.1】在 VC6 开发环境中建立 一 个 名 为 BinaryTreeTest 的Win32 Console Application 类型的工程。在工程中添加新类,类名为BinaryTree、BinTreeNode 类,代码可参照附录。调试通过。【实 验实 验 1.2】阅 读指 导书 附录BinaryTree 类中 InOrder、PreOrder函数。以及从屏幕输入数据给树、树节点输出到屏幕的函数。并在main 中写出测试代码。【实验实验 1.3】用递归算法实现类中的 Exchange 函数(接口如附录所示),函数功能:交换每个结点的左子女和右子女。在 main 中写出测试代码。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过8图(选做)基本操作3信息与计算科学本科生熟悉图的两 种 常 用 的存储结构,以及 在 这 两 种存 储 结 构 上的 两 种 遍 历图的方法,即深 度 优 先 遍历 和 广 度 优先遍历。进一步 掌 握 递 归算 法 的 设 计方法。关 于 各种 典 型 著 名的复杂算法,在 上 机 实 习方 面 不 做 基本要求。更适合 于 安 排 大型课程设计。11.阅读理解指导书上第一个关于图的邻接矩阵的程序,做下列题目。(1)根据指导书中的 G2 图(无向图),输入数据运行程序。(2)再适当修改上述程序,使它适用于 G1 图(有向图),输入数据运行程序。(3)继续修改程序使之可以表示存储以下网(边上带权值的图)。2.调试运行上面第二个程序,即图的邻接链表存储的程序。解决下列问题。(1)根据指导书的 G2 图(无向图),输入数据运行程序。(2)再适当修改程序使它适用于 G1 图(有向图),输入数据运行程序。提示:有向图的邻接链表分为正邻接链表和逆邻接链表。3.设计一个程序,建立图的邻接矩阵,并且进行图的深度优先遍历。结合第 2 题的图运行调试程序。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-7-五、考核办法和成绩评定标准占该课程最后期末总评成绩的 25。但如果没有提交综合性实验的汇报材料,则该课程最后期未总评一律不予通过。六、实验指导书自编实验指导书七、其他说明无大纲修订人:吴东庆修订日期:2007-6-6大纲审定人:胡小健审定日期:2007-6-16-8-计算机图形学实验课教学大纲计算机图形学实验课教学大纲一、基本信息课程代码:110053实验课程名称:计算机图形学英文名称:Computer Graphics课程总学时:72总学分:3.5实验学时:20(综合性实验 5 学时)适用对象:信息与计算科学专业本科生二、实验课程的性质与任务本实验课是计算机图形学课程教学中一个必不可少的实践环节。通过实验,使学生理解计算机处理图形的过程,并利用综合图形环境开发有关计算机图形设计应用软件,从而适应信息社会的飞速发展,达到新时期对大学生综合素质的要求。本实验课涉及到高级语言程序设计、计算机图形学、高等代数三门课程的多个章节。例如高级语言程序设计中程序设计的循环结构,判断结构,函数和类的编写;计算机图形学课程中图形变换、OpenGL 类库的使用;高等代数课程中矩阵乘法运算规则等。通过该实验让学生巩固本课程的知识,培养学生的综合多门课程知识解决问题的能力,进一步熟练掌握面向对象的编程思想与程序设计方法,提高学生图形相关编程的能力。本实验课用 C+(或 C)结合 OpenGL 图形库进行。三、实验教学目的与要求(一)、实验的目的与要求:主要目的是使学生在学习理论知识的同时,能够通过上机实践,要验证、巩固和补充课堂讲授的计算机图形学理论知识。培养学生初步具备算法设计、分析和动手调试实际算法的能力,为实际工作打下基础。要求:学生在实验前做好预习,实验时教师先讲述实验内容、介绍程序设计原理和基本思路,学生在教师指导下自己操作完成实验。实验完毕由教师验收合格后方可离开,并写好实验报告。(二)、实验的测评要求1、所要提交的材料要求:要求提交电子文档与纸质材料。电子文档包括两部分,一部分是建立程序的工作文件夹(仅将*.obj 删除,留下其余文件)。另一部分电子文档是实验设计报告,实验报告书封面和正文格式要符合仲恺农业技术学院课程设计、实习报告书封面与正文标准格式要求,实验报告内容包含:实验题目、实验的目的与要求、实验内容所涵盖的章节知识、需求分析(要有详细的模板划分及功能说明,即做什么,要求用建模图例,可用 visio 或 uml 等工具绘制)、概要设计(如何做,要求图例)、详细设计、调试分析、测试结果、附录和设计心得体会等。并将该部分电子文档打印成纸质材料提交。文档提交时间:完成实验后一周之内,如没有在规定的时间内提交符合要求的材料,则无论卷面分再高,总评也一律不通过。2、源程序要求:一定要按平时上课时的要求,否则退回重做。-9-(三)、实验分组与实验场地要求原则上每组人数不得超过 2 人,如果要求的课时内不能如期完成,则要求学生课外自行完成,不得另外占用课时。欢迎学生申请个人独立完成,同时也欢迎学生提前提交汇报材料进行测评。四、实验项目、内容提要与要求序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注1OPENG库的安装与程序基本框架基本操作3信息与计算科学专业本科生1掌握OpenGL 库安 装的 基本 方法。2掌握OpenGL 中绘 制基 本图 元(点,线,面等)的方法。1【实验实验 1.1】1 将安装压缩包“OpenGL glut 库.rar”解开,复制glut32.dll 到/windows/system 文件夹下,复制 glut32.lib 到/vc98/lib 文件夹下,复制 glut.h到/vc98/include 文件夹下。2、打开 vc,新建工程 win32 consoleapplication,工程名称起为“test1”模式选择“hello,word”。【实验实验 1.2】在 test1 文件中输入如下代码(见指导书),编译通过运行。尝试修改其中至少 3 处参数,观察屏幕截图的变化。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过2画线算法基本操作3信息与计算科学专业本科生1、掌握 中点 画线 算法。2、掌握Bresenham画 线算法。11、建立一个名为 DrawLineTest 的控制台类型的工程,在DrawLineTest.cpp 中添加如下代码(见指导书);2、在工程中添加一个类,命名为MyGraphicsLib。类中添加两个画线函数。到场指示性指导不给解决方案不得拷贝他人材料否则不能过-10-序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注3Hermite插值样条曲线基本操作3信息与计算科学专业本科生1掌握根据几何约束条件生成 Hermite插值样条曲线的算法。2.掌握OpenGL 下绘制曲线的方法。11、在实验二的 OpenGL 框架下(即保留主文件中 main、MyDisplay 函数)添加一个HermiteSpline 类,声明见指导书:要求实现要求实现 DrawDraw 函数。提示:可参函数。提示:可参考教材考教材 P91P91 页公式页公式 4-374-37。2、在工程中添加一个Point2F类(见指导书)。3、在 MyDisplay 中编写测试代码(见指导书)。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过4OpenGL图形变换基本操作3信息与计算科学专业本科生1、掌握二维图形的基本几何变换,如平移、旋转、缩放。2、掌 握OpenGL中模型变换函数。11、在实验二的 OpenGL 框架下(即保留主文件中 main、MyDisplay 函数),编写新的MyDisplay 函数。参考代码见附录。2、利用平移、旋转等操作,实现对图中的四边形做图形变换:画出以直线 2x+2y=1 为对称轴的镜像图形。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-11-序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注53D图形变换验证性3信息与计算科学专业本科生1、掌握三维图形的基本几何变换,如平移、旋转、缩放。2、掌握OpenGL 中透视投影生成真实感图形的方法。11、输入指导书附录中的代码,并调试通过。2、修改 gluLookat,gluPerspective 函数的参数,观察投影结果。3、对模型做旋转、平移、缩放变换。到场指示指导不给出解决方案不得拷贝他人材料否则不能能过6裁剪算法综合性5信息与计算科学专业本科生1、理解并掌握二维线段的cohen-sutherland裁剪算法;2、复习C+语言程序设计课程中的类、函数、循环结构、判断结构的语法等内容。3、掌握解析几何中,任意两条线段求交点的算法;4、初步了解图形系统中图形 类 的 构 造 方法。11、在实验 2 框架下建立一个名为 ClipTest 的 win32 工程。2、工程中添加实验 3 中的Point2f 类,新建 Line 类、Window 类。参考源码见附录。要求调试通过。3、完成 Line 类中的 Draw 函数和Window类中的裁剪函数Clip、编码函数 GetCode、绘图函数 Draw。4、在 main 中编写测试代码。要求在屏幕上显示线段和窗口,并能显示线段裁剪前后的情况。到场指示指导不给出解决方案不得拷贝他人材料否则不能通过*7(选做)OpenGL窗口程序设计基本操作3信息与计算科学专业本科生初步了解OpenGL 的GUI 程序设计结构;了解OpenGL 的基本数据类型、核心函数及辅助函数的使用。11、创建工程 在VC中新建项目命名为MyOpenGL,项目类型选MFC Appwizard(exe)如下图所示:项目类型选择“单文档”。2、OpenGL 基础库设置。3、添加变量和函数。4、.在PreCreateWindow 函数中将窗口的客户区设置为 OpenGL能够支持的风格。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-12-五、考核办法和成绩评定标准占该课程最后期末总评成绩的 25。但如果没有提交综合性实验的汇报材料,则该课程最后期未总评一律不予通过。六、实验指导书自编实验指导书七、其他说明无大纲修订人:吴东庆修订日期:2007-6-6大纲审定人:胡小健审定日期:2007-6-16-13-操作系统原理实验课教学大纲操作系统原理实验课教学大纲一、基本信息课程代码:110427实验课程名称:操作系统原理英文名称:Principle of Operating System课程总学时:54总学分:3实验学时 12(其中综合性实验 6 学时)适用对象:信息与计算科学专业本科生 05 级二、实验课程的性质与任务操作系统是理论与实践并重的课程。这门实验课要综合运用一、二、三年级所学的多门课程的内容。通过本实验课程培养学生以下几方面的能力:1.加深学生对操作系统所涉及的概念、算法、数据结构的理解;2.体验操作系统所涉及的抽象思维的具体实现;3.激励学生在操作系统设计方面的创新精神;4.培养正规系统程序设计的能力。本实验课多个实验涉及到高级语言程序设计、数据结构、可视化软件开发环境、软件工程等几门课程的多个章节。通过该实验让学生巩固本课程的知识,培养学生的综合多门课程知识解决问题的能力,提高学生的数据抽象和组织能力,进一步加深对操作系统原理的理解,提高学生实践编程的能力。三、实验教学目的与要求(一)、实验的目的与要求:使学生了解操作系统的基本原理,学会根据操作系统原理解决实际项目中的问题,根据实际的项目特征选择适当的算法及软件开发方法,提高培解决实际问题的能力。要求:学生在实验前做好预习,实验时教师先讲述实验内容、介绍实验原理和基本思路,学生在教师指导下自己操作完成实验。实验完毕由教师验收合格后方可离开,并写好实验报告。(二)、实验的测评要求1、必须提交实验报告的纸制版和电子版:报告内容及要求:1)如果是程序开发实验,则必须包含源程序;2)如果不是编码性实验,必须包含其他实验结果;3)实验报告要求:实验报告格式要符合统一的标准格式,内容一般包含:实验题目、实验目的、实验内容、实验要求、实验结果等;4)报告提交时间:普通实验两周在实验做完之内,综合性设计性实验在期末考试之前;5)如没有在规定的时间内提交符合要求的材料,则无论卷面分再高,总评也一律不通过。2、源程序要求:一定要按平时上课时的要求,否则退回重做。-14-(三)、实验分组与实验场地要求1、普通实验个人独立完成;2、综合性设计性实验视工作量大小由老师设定人数上限;3、如果在要求的课时内不能如期完成,则要求学生课外自行完成,不另外占用课时;4、欢迎学生提前提交汇报材料进行测评。四、实验项目、内容提要与要求序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注1了解WindowsXP的基本信息实验认知实验3信息与计算科学本科生1了解WindowsXP 的系统信息。2了解系统硬软件资源。3.了解注册表。1实验内容1、了解“帮助和支持中心”。2、自定义自己的计算机。3、使用注册表编辑器打开并了解注册表。实验步骤和要求:1、实验步骤:参照教材 22 页至28 页。2、实验要求:1)每个实验内容均需截图,将几个重要截图作为实验结果。2)截图要求:必须截取全屏,贴入实验报告时对大小进行适当调整,以每页可以放 3 副图为准。注:截图雷同者一经发现,均为 0 分。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-15-序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注2WindowsXP并行编程初步综合性6信息与计算科学本科生1加深理解进程、线程的概念。2理解和运用WindowsXP 建立进程、建立线程的Win32 接口。3结合可视化开发环境、高级语言程序设计、软件工程等课程相关知识,提高知识的综合运用能力。1实验内容:实验内容:理解和运用 Windows XP 建立进程、建立线程的 Win32 接口;1、开发程序 TineThread.cpp,实现两个时钟:北京和伦敦(不要求图形界面)。2、编写程序 MainProcess.cpp,它建立进程,运行上述 TimeThread.exe。3*、选做内容:用图形界面方式,实现北京、伦敦两个时钟。实验要求实验要求1、用 VC+6.0 编写程序。2、实验步骤及代码参照教材 77 页至 85 页。3、实验结果中应包含源代码及运行画面截图。注:实验结果雷同者全部 0 分。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-16-序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注3磁盘管理与文件系统的安全与共享基本操作3信息与计算科学本科生1 熟练掌握磁盘分区、格式化、碎片整理等基本操作。2理解、熟练掌握Windows XP文件、文件夹的安全与共享设置。1实验内容:实验内容:1、磁盘管理。2、磁盘碎片整理。3、设置本机文件或文件夹的安全。4、设置共享文件夹。实验步骤与要求实验步骤与要求1、实验步骤:参照教材 162页至 170 页进行。2、实验要求:1)每个实验步骤均需截图,将几个重要截图作为实验结果。2)不要真正格式化硬盘,了解菜单即可。3)截图要求:必须截取全屏,贴入实验报告时对大小进行适当调整,以每页可以放 3 副图为准。注:截图雷同者一经发现,均为 0分。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-17-注:加*的实验根据课时情况选做。序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注*4(选做)可变分区管理的计算机模拟基本操作3信息与计算科学本科生1 通过实验加深对可变分区管理方式的理解。2 掌握分配内存和回收内存的方法及原理。1在理解可变分区管理的基础上,利用 C+语言编写模拟可变分区管理的程序,具体要求如下1、空闲分区利用双向链组织。2、向最终用户调用者提供分配内存、回收内存的函数。3、讨论选择利用双向链比用单向链组织空闲分区的好处。4、讨论分配内存函数、回收内存函数一定是临界区(互斥访问)的原因,如何实现这种互斥。5、操作系统:Windows XP,语言:VC+。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-18-五、考核办法和成绩评定标准占该课程最后期末总评成绩的 25。但如果没有提交综合性实验的汇报材料,则该课程最后期未总评一律不予通过。六、实验指导书自编实验指导书七、其他说明无大纲修订人:王前修订日期:2007-6-6大纲审定人:胡小健审定日期:2007-6-16-19-可视化软件开发环境实验课教学大纲可视化软件开发环境实验课教学大纲一、基本信息课程代码:110062实验课程名称:可视化软件开发环境英文名称:Visual Programming Environment课程总学时:60总学分:3.5实验学时:30(其中综合性实验 12 学时)适用对象:信息与计算科学专业本科生二、实验课程的性质与任务可视化软件开发环境是一门实践性很强的专业课程,训练学生灵活应用所学可视化软件开发环境知识,独立完成问题分析的能力,结合数据结构、数据库等学科的理论知识,编写程序求解指定问题。初步掌握在可视化软件开发环境下的需求分析、系统设计、程序编码、测试等基本方法和技能;提高综合运用所学的理论知识和方法独立分析和解决问题的能力;训练用系统的观点和软件开发规范进行软件开发,巩固、深化学生的理论知识,提高编程水平,并在此过程中培养他们严谨的科学态度和良好的工作作风。本实验课的设计性、综合性实验涉及到高级语言程序设计、数据结构、数据库原理等几门课程的多个章节相关知识。通过该实验让学生巩固本课程的知识,培养学生的综合多门课程知识解决问题的能力,提高学生对知识综合运用的能力,进一步加深对可视化开发环境中的重要概念和思想的理解。三、实验教学目的与要求(一)、实验的目的与要求:使学生掌握可视化开发环境的编程思想,学会在实际的软件项目中应用,根据实际的项目特征选择或自行编制适当的工具或组件,培养基本的、良好的可视化开发环境下的编程技能。要求:学生在实验前做好预习,实验时教师先讲述实验内容、介绍实验原理和基本思路,学生在教师指导下分组(每组 3 人)完成实验。实验完毕由教师验收合格后方可离开,并写好实验报告。(二)、实验的测评要求1、必须提交实验报告的纸制版和电子版:报告内容及要求:1)如果是程序开发实验,则必须包含源程序;2)如果不是编码性实验,必须包含其他实验结果;3)实验报告要求:实验报告格式要符合统一的标准格式,内容一般包含:实验题目、实验目的、实验内容、实验要求、实验结果等;4)报告提交时间:普通实验两周在实验做完之内,综合性设计性实验在期末考试之前;5)如没有在规定的时间内提交符合要求的材料,则无论卷面分再高,总评也一律不通过。2、源程序要求:一定要按平时上课时的要求,否则退回重做。-20-(三)、实验分组与实验场地要求1、普通实验个人独立完成;2、综合性设计性实验视工作量大小由老师设定人数上限;3、如果要求的课时内不能如期完成,则要求学生课外自行完成,不另外占用课时。4、欢迎学生提前提交汇报材料进行测评。四、实验项目、内容提要与要求序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注1循环控制语句编程基本操作5信息与计算科学本科生1熟悉delphi开发界面,掌握控制台编程方法。2 掌 握循 环 控制编程。1用 DELPHI 的控制台方式编制程序:1、熟悉 delphi 开发界面。2、计算 1+2+3+n。3、求 n!的值。要求:1、输入 n,输出结果 1+2+3+n 的值。2、输入 n,计算 1*2*3*n。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-21-序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注2过程调用编程基本操作5信息与计算科学本科生1掌握过程调用编程。2熟练过程的调用和控制台编程。1实验内容:用控制台方式编制程序:编写一个能求 5 个以内实数的平均值的程序,并通过调用 Average 过程来计算平均值。用户通过程序输入任意 5 个以内的正实数,具体输入几个不确定,请用12.45、34.5、0、23 来测试程序。要求:1、调用 Average 过程来计算平均值。2、用户通过程序输入任意 5 个以内的正实数。3、用 12.45、34.5、0、23 来测试程序。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-22-序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注3*窗体设计实验设计性3信息与计算科学本科生1掌握普通窗体的属性和事件。2 一般窗体的设计方法。3 掌 握MDI 窗体的设计。1一、设计一窗体,从组件面板中选择一些常用控件放在窗体中(如Standard选项卡中的组件),调整其大小和位置。运行该程序,观察运行结果,并察看 DELPHI 自动生成了那些代码。二、以“关于”窗体为例,设计并保存一个自己的窗体模板。三、设计一个 MDI 程序要求:1)一个主窗体,三个子窗体;2)自行设置每个窗体的 Caption、Height、Width、Left、Top、Color、Border Icons、Name、Position 等属性;3)在每个子窗体中放置至少一个按钮,并编辑其单击事件(在 OnClick 事件中编程,功能任意,如 showmessage(我要说的一句话。);或窗体名.color:=RGB(Random(255),Random(255),Random(255)等);4)实现子窗体的层叠、平铺等功能;5)实现主窗体与当前激活子窗体的菜单合并。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-23-序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注4*函数调用编程设计性3信息与计算科学本科生1掌握函数的调用编程的基本知识。2 能利用函数的调用解决一些实际问题。1一、编制程序解二元一次方程组Ax+By=CDx+Ey=F要求:解方程组部分用过程语句。二、编写一个程序,求正整数 a和 b 之间的完全数。所谓完全数是指它的因子之和等于它本身,例如:28=1+2+4+7+14。要求写一个布尔函数 perfect(x)在该程序中调用,如果 x 是完全数,perfect(x)返回 true,否则返回false。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-24-序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实验内容提要教教学学方方法法教教学学要要求求备备注注5简易计算器程序设计性8信息与计算科学本科生1掌握组件编程方式。2 熟悉事件触发机制。1实验内容:设计一个简易计算器。要求:执行简单的四则运算和开方运算,操作方式如下:1、键入计算的第一个数字。2、单击“+”执行加法,单击“-”执行减法。3、键入计算的下一个数字,键入下一个运算符。4、单击“=”清除并重新开始。5、单击“CE”清楚当前输入(以前输入的数字和运算符仍然有效)。到场指示性指导不给出解决方案不得拷贝他人材料否则不能通过-25-注:加*的实验根据课时情况选做。序序号号实实验验名名称称实实验验类类型型实实验验时时数数实实验验者者类类别别实实验验目目的的每每组组人人数数实验内容提要实