如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
2012级计算机软件技术基础实验(全部)实验报告内容:1)实验目的2)给出程序清单。3)调试过程中出现的错误及对错误的分析、改正4)实验结果的输出(要求有屏幕截图)实验一单链表的插入和删除(4个机时)1.1题目要求:已知线型表中元素为“TANKKYOU”,利用模块化编程思想,编程实现如下函数功能:1)建立一个带头结点的单链表,将线性表中元素依次放入(函数1);输出该单链表中各元素(函数4)。2)删除单链表中的第四个元素(函数2);输出执行删除操作之后的单链表(函数4);3)在单链表中的第二个元素前插入元素“H”(函数3);输出执行插入操作之后的单链表(函数4)。1.2程序框架:#include<stdio.h>#include<string.h>#include<malloc.h>//结点类型定义。。。。。。。//字符数组定义,保存字符“TANKKYOU”。。。。。。。intmain(){//函数声明。。。。。。。。。。。。。。。。。//变量定义。。。。。//调用子函数1,建立链表。。。。。。。。。。。。。。。//调用子函数4,输出链表中的内容。。。。。。。。//调用子函数2,删除第四个元素。。。。。。。。。。//调用子函数4,输出链表中的内容。。。。。。。。//调用子函数3,在第二个元素之前插入元素“H”。。。。。。。。。//调用子函数4,输出链表中的内容。。。。。。。。return0;}实验二二叉排序树的查找(2个机时)2.1题目要求:建大某班级部分学生信息如下表所示,编程实现如下功能:1)定义一个结构体数组,数组名可定义为student,依表中顺序保存8位同学的信息;2)选取结构体成员中的序号或学号作为关键字,根据关键字的大小构造一棵二叉排序树,将各数据元素依次插入(二叉排序树中的结点要包括结构体所有成员的信息);3)在生成的二叉排序树中查找关键字为8(或110610107)和38(或110610207)的结点,并输出结点中的数据信息。序号学号姓名班级性别26110610125WXD111M25110610124WQH111M41110610210CL112M8110610107YTT111F68110610313LBZ113M44110610215HHF112M36110610205WY112F38110610207ZLF112F2.2程序框架:#include<stdio.h>#include<string.h>#include<malloc.h>//结构体类型定义。。。。。。。。。//二叉排序树结点类型定义。。。。。。。。。intmain(){//子函数声明TNODE*create_binary_sort_tree(。。。。。);//二叉排序树生成子函数TNODE*bstsearch(。。。。。);//二叉排序树查找子函数voidprint_out(。。。。。);//输出子函数//定义结构体数组并初始化(参阅c程序设计的教材)。。。。。。。。。//生成二叉排序树并输出根结点信息。。。。。。。。。//查找关键字为8(或110610107)的结点并输出该结点信息。。。。。。。。。//查找关键字为38(或110610207)的结点并输出该结点信息。。。。。。。。。return0;}//二叉排序树生成子函数TNODE*create_binary_sort_tree(。。。。。){。。。。。。。。。}//二叉排序树查找子函数TNODE*bstsearch(。。。。。){。。。。。。。。。}//输出子函数voidprint_out(。。。。。){。。。。。。。。。}3.2实验报告附加要求:手工画出编程实现的二叉排序树,并分析该二叉排序树的平均查找长度。实验三排序(2个机时)3.1题目要求:建大某班级部分学生信息参考实验二中的表格,编程实现如下功能:1)定义一个结构体数组,数组名可定义为student,依表中顺序保存8位同学的信息;2)选取结构体成员中的序号或学号作为关键字,选取直接插入排序方法对各记录进行排序,输出排序后第5条记录的相关信息(必做);3)选取结构体成员中的序号或学号作为关键字,选取简单选择排序方法对各记录进行排序,输出排序后第8条记录的相关信息(必做);4)选取结构体成员中的序号或学号作为关键字,选取冒泡排序方法对各记录进行排序,输出排序后第3条记录的相关信息(必做);5)选取结构体成员中的序号或学号作为关键字,选取快速排序方法对各记录进行排序,输出排序后第1条记录的相关信息(必做);6)选取结构体成员中的序号或学号作为关键字