欢迎来到天天文库
浏览记录
ID:11392950
大小:48.00 KB
页数:5页
时间:2018-07-11
《《计算机软件技术基础》实验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、《计算机软件技术基础》实验实验一、双链表与队应用1.双链表设计试验要求:a.用C语言实现如下一个双链表结构及程序.给出流程及程序清单。节点结构:学号姓名性别前驱结点指针后继结点指针链表结构:b.功能函数:数据输入插入操作删除操作数据显示链表存盘从硬盘恢复链表c.顺序输入学号10、8、7、5、11,打印链表的当前排列.d.根据该结果分析程序动作.2.迷宫问题n*m迷宫是一个矩形区域,有入口和出口各一个,迷宫内有一些阻碍不能通过,利用队列,寻找一条由入口到出口的最短路径。要求:a.用C语言实现求解迷宫问题的程序。给出流程及程序清单。b.
2、根据结果分析程序。迷宫如下:0:表示该方格可通过1:表示该方格有阻碍不能通过0010000001100100000010001100110100001000000100000实验二、二叉排序树内容:二叉排序树程序设计要求:用C语言设计学生成绩的二叉排序树的生成程序:a.结点结构是由数据域与两指针域组成的链式存储结构,数据域由成绩(整型),学号数组(设同一成绩的学生人数小于10)构成.b.以成绩为关键字作二叉树的生成与检索.c.功能:插入删除中序列表检索当前二叉树存盘恢复保存在硬盘的二叉树d.根据结果分析程序动作.实验三、window
3、s环境下进程与线程程序设计试验目的:了解进程和线程的基本概念。实现父进程和其子进程的通信,掌握管道运用。试验内容:两个程序,一个作为父进程(Parent),一个作为子进程(Child)。父进程启动后就产生一个管道,同时启动子进程,并从管道一端发送消息,同时Child启动后会创建一个工作线程,专门用来从那个管道另一端读入数据。通过父进程的功能按钮来改变图形形状参数,并传给Child,子进程便绘出相应的图形(矩形、椭圆、三角形)。当程序Child单独运行时,通过启动三个线程同时绘制三个图形(矩形、椭圆、三角形),并能实现线程挂起,重新启
4、动。试验要求:本试验建议在VC6下设计。程序建议如下设计:(1)程序Parent在父进程中说明几个相关函数及指针定义,创建管道和启动子进程。(2)在VC6下程序实现步骤是:1、利用AppWizard(EXE)产生Parent应用框架,然后在文件ParentDlg.h头部加入两个进程用于相互通信的结构和常量值。2、在资源中加入“画矩形”,“画椭圆”,“画三角形”,“创建子进程”,“终止子进程”等按钮。他们的ID分别为:IDC_RECTANGLE、IDC_ELLIPSE、IIDC_TRIANGLE、IDC_CREATE_CHILD、ID
5、C_TERMINATE_CHILD,并在ClassWizard中加入相应函数。(3)程序Parent——Child启动之后立刻创建一个新线程,并在新线程中执行读管道操作,利用读得参数使主窗口绘出形状。(4)在程序Child上增加一些控件资源:按钮:“启动多线程”,“挂起”。单选按钮:“按线程优先级运行”,“同时运行”,编辑框:“延迟时间”等等。“启动多线程”后三个线程同时执行,在线程执行过程中可以将线程挂起,并可让挂起的线程再次执行。(5)根据结果分析程序动作。实验四、B+树程序设计试验目的:掌握B+树基本概念,实现B+树生长过程。
6、试验内容:设计一个4阶B+树,包括:(1)叶子的每个记录应该包括4字节(long)关键码值和60字节的数据字段(存储文件名等,可以自定),设每个叶子可以存储5条记录,而内部节点应该是关键码值/指针对。此外,每个节点还应该有指向同层下一个节点的指针、本节点存储的关键码数等;(2)此4阶B+树应该支持插入、删除以及根据给定关键码值进行精确检索与关键码范围检索;(3)显示(打印)此4阶B+树的生长(含删除节点)过程实例;(4)有能力的同学增加4阶B+树的存/取(从硬盘文件)功能。程序设计时建议注意以下几点:l节点结构定义,即内部节点与外部
7、节点同构问题;l初始化设置;l插入删除时左、右指针的处理;lB+树输入(文件名与关键码)/输出(显示)格式;
此文档下载收益归作者所有