欢迎来到天天文库
浏览记录
ID:21762584
大小:185.50 KB
页数:38页
时间:2018-10-24
《新软件基础实验指导》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、计算机软件基础实验指导书计算机软件基础实验指导书目录实验报告要求……………………………………...……………….1实验一顺序表的基本操作………………………………………....2实验二单链表的基本操作……………………………..……….….5实验三堆栈的基本操作……………………………..…………….10实验四循环队列的基本操作……………..…………..…………..14实验五稀疏矩阵的转置………………………………....………...18实验六二叉排序树的建立与遍历………………………..……….22实验七直接插入排序………………………………………..…….24实
2、验八直接选择排序……………………………………..……….26实验九顺序查找和折半查找……………………………………...28实验十二叉排序树查找…………………………………..……….32计算机软件基础实验指导书实验报告要求一、实验目的二、实验内容三、程序流程图四、实验结果(要求检测所有情况的正确性,写出测试条件及相应的测试结果)五、完成思考题36计算机软件基础实验指导书实验一顺序表的基本操作(2学时)一、实验目的了解顺序表的逻辑特征,掌握顺序表的描述方法、特点及有关的概念,掌握顺序表上的插入和删除等基本操作算法。二、实验内容在顺序表List[]中,实现顺序
3、表的基本操作,包括:初始化顺序表,在表中插入元素、删除元素。基本要求:(1)顺序表的元素个数可随意设定;(2)可连续测试任意多个元素的插入、删除,(插入、删除位置及要插入元素数值均从键盘输入);(3)任一操作结束后将顺序表中的内容输出;(4)可由用户选择退出程序。三、实验要点及说明顺序表又称为线性表的顺序存储结构,它是用一组地址连续的存储单元依次存放线性表的各个元素。可按如下格式定义顺序表:#defineMAXLEN50/*定义顺序表最大元素个数50*/typedefstruct{datatypeList[MAXLEN];/*定义顺序表List*/int
4、Num;/*定义顺序表表长*/}Seqlist;模块划分:(1)initiq()函数:初始化顺序表(2)insertq()函数:实现插入功能(3)deleteq()函数:实现删除功能(4)print()函数:实现输出功能四、参考源程序#include#defineMAXLEN50typedefintdatatype;typedefstruct{datatypeList[MAXLEN];intNum;}Seqlist;voidinitiq(Seqlist*la);intinsertq(Seqlist*la,intn);intdeleteq
5、(Seqlist*la,intn);36计算机软件基础实验指导书intprint(Seqlist*la);voidmain(){Seqlistla;ints,n;/*s选择输入,n插入或删除数据的个数*/printf("请输入你的选择:1---initiate2---insert3---delete4---print5---exityourchoice=");scanf("%d",&s);while(s!=5){if(s==1){initiq(&la);printf("完成初始化!");}elseif(s==2){printf("请输入待插入的数
6、据个数:");scanf("%d",&n);insertq(&la,n);print(&la);}elseif(s==3){printf("请输入待删除的数据个数:");scanf("%d",&n);deleteq(&la,n);print(&la);}elseif(s==4){print(&la);}elseprintf("你的选择是错误的!");printf("请输入你的选择:1---initiate2---insert3---delete4---print5---exityourchoice=");scanf("%d",&s);}}/*初始
7、化*/voidinitiq(Seqlist*la){la->Num=0;}/*插入*/intinsertq(Seqlist*la,intn){inti,j;/*i插入位置,j顺序表下标*/datatypex;/*x插入数据*/while(n){if(la->Num>=MAXLEN-1){printf("36计算机软件基础实验指导书表满,不能插入!插入未完成,还有%d个数据未插入",n);return0;}printf("请输入插入的位置和数据:");scanf("%d%d",&i,&x);if(i<0
8、
9、i>la->Num){printf("
10、插入位置不合理!");}else{if(i==la->Num)la->Lis
此文档下载收益归作者所有