数据结构试验报告格式(共18页).doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《数据结构试验报告格式(共18页).doc》由会员分享,可在线阅读,更多相关《数据结构试验报告格式(共18页).doc(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上数据结构实验指导书实验一(实验题目:顺序表。实验时间:11月5日)一、 实验目的1、 掌握使用Turbo C2.0上机调试线性表的基本方法;2、 掌握线性表的基本操作:插入、删除、查找以及线性表合并等运算在顺序存储结构和链接存储结构上的运算。二、 实验要求1、 认真阅读和掌握本实验的程序。2、 上机运行本程序。3、 保存和打印出程序的运行结果,并结合程序进行分析。4、 按照你对线性表的操作需要,重新改写主程序并运行,打印出文件清单和运行结果三、 注意事项:在磁盘上创建一个目录,专门用于存储数据结构实验的程序。四、 实验内容程序1:线性表基本操作的实现这个程序中演示了顺
2、序表的创建、插入、删除和查找,请修改并完成。 程序如下:#include #include /*顺序表的定义:*/#define ListSize 100typedef structint dataListSize;/*向量data用于存放表结点*/int length;/*当前的表长度*/SeqList;void main()void CreateList(SeqList *L,int n);void PrintList(SeqList *L,int n);int LocateList(SeqList *L,int x);void InsertList(SeqList *L,int x,in
3、t i);void DeleteList(SeqList *L,int i); SeqList L;int i,x;int n=10;/*THE LENGTH OF LIST*/L.length=0;clrscr();CreateList(&L,n);/*CREAT THE LIST*/PrintList(&L,n);/*PRINT THE LIST*/printf(INPUT THE RESEARCH ELEMENT);scanf(%d,&x);i=LocateList(&L,x);printf(the research position is %dn,i);/*顺序表查找*/printf(
4、input the position of insert:n);scanf(%d,&i);printf(input the value of insertn);scanf(%d,&x);InsertList(&L,x,i);/*顺序表插入*/PrintList(&L,n);/*打印顺序表*/printf(input the position of deleten);scanf(%d,&i);DeleteList(&L,i);/*顺序表删除*/PrintList(&L,n);getch();/*打印顺序表*/*顺序表的建立:*/void CreateList(SeqList *L,int n)i
5、nt i;printf(please input n numbersn);for(i=1;idatai);L-length=n;/*顺序表的打印:*/void PrintList(SeqList *L,int n)int i;printf(the sqlist isn);for(i=1;idatai);/*顺序表的查找:*/int LocateList(SeqList *L,int x)int i;for(i=1;idatai)=x) return(i); else return(0);/*顺序表的插入:*/void InsertList(SeqList *L,int x,int i)int
6、j;for(j=L-length;j=i;j-)L-dataj+1=L-dataj;L-datai=x;L-length+;/*顺序表的删除:*/void DeleteList(SeqList *L,int i) int j;for(j=i;jlength)-1;j+)L-dataj=L-dataj+1;五、调试心得。实验二 单链表操作(实验题目:链表。实验时间:11月12日)一、 实验目的1 掌握握单链表的基本操作:插入、删除、查找等运算。二、 实验要求1 认真阅读和掌握本实验的程序。2 上机运行本程序。3 保存和打印出程序的运行结果,并结合程序进行分析。4 按照你对单链表的操作需要,重新改
7、写主程序并运行,打印出文件清单和运行结果三、 实验内容程序1:单链表基本操作的实现这个程序中演示了单链表的创建、插入、删除和查找。程序如下: #includetypedef struct node int data; struct node *next; NODE;/*/NODE *Create()NODE *p,*head;int x;head=(NODE *)malloc(sizeof(NODE);head-next=NULL;printf(Input data,-1 to End!n);scanf(%d,&x);while(x!=-1) p=(NODE *)malloc(sizeof(N
8、ODE); p-data=x; p-next=head-next; head-next=p; scanf(%d,&x);return(head);/*/void Output(NODE *head) NODE *p; p=head; printf(Begin to dump the LinkList.n); while(p-next!=NULL) printf(-%d,p-next-data); p=p-next; printf(nThe LinkList ended!n);/*/int Listlen(NODE *head) int i=0; NODE *p=head; while(p-ne
9、xt!=NULL) i+; p=p-next; return(i);/*/int Get(NODE *head,int i)int j=0;NODE *p=head;while(p-next&jnext;if(!p-next|ji) return(0);else return(p-data);/*/void Del(NODE *head,int i)NODE *p=head;int j=0;while(p-next&jnext;if(!p-next|ji-1) printf(the position is wrongn);elsep-next=p-next-next;/*/void Ins(N
10、ODE *head,int i,int e)NODE *p=head,*q;int j=0;while(p-next&jnext;if(!p-next&ji-1) printf(Wrong positionn );else q=(NODE *)malloc(sizeof(NODE); q-data=e; q-next=p-next; p-next=q;/*/main() NODE *head; int length; int i,element; clrscr(); head=Create(); Output(head); length=Listlen(head); printf(the le
11、ngth of the link is %dn,length); printf(input the order :n); scanf(%d,&i); element=Get(head,i); printf(the element of the order is %dn,element); printf(input the del position n); scanf(%d,&i); Del(head,i); Output(head); printf(Input the insert posion and element:n); scanf(%d%d,&i,&element); Ins(head
12、,i,element); Output(head); getch(); 四、调试心得。实验三 栈的基本操作(实验题目:栈的基本操作。实验时间:11月19日)一、 实验目的掌握栈的基本操作:初始化栈、判栈为空、出栈、入栈等运算。二、实验要求1 认真阅读和掌握本实验的算法。2 上机将本算法实现。 3 保存和打印出程序的运行结果,并结合程序进行分析。三、实验内容利用栈的基本操作实现将任意一个十进制整数转化为R进制整数算法为:1、定义栈的顺序存取结构2、分别定义栈的基本操作(初始化栈、判栈为空、出栈、入栈等)3、定义一个函数用来实现上面问题:十进制整数X和R作为形参初始化栈只要不为重复做下列动作将入栈
13、X=X/R只要栈不为空重复做下列动作栈顶出栈输出栈顶元素参考程序:#define MAXSIZE 100#includestruct stack int dataMAXSIZE; int top;void init(struct stack *s) s-top=-1;int empty(struct stack *s) if(s-top=-1) return 1; else return 0; void push(struct stack *s,int i) if(s-top=MAXSIZE-1) printf(Stack is fulln); return; s-top+; s-datas-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 试验报告 格式 18
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内