77范文网 - 专业文章范例文档资料分享平台

数据结构实验报告(2)

来源:网络收集 时间:2018-11-23 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

}

return OK; }

status Display(elemtype e){

printf(\return OK;

}

status main(){

sqlist LIST;elemtype ELEM;

elemtype * e=&(ELEM); sqlist * L=&(LIST); printf(\执行操作:\\n\

printf(\ InitList_Sq(L); List_Insert(L,1,10);

List_Insert(L,2,20); List_Insert(L,3,30); List_Travel(L,Display); printf(\执行操作:\\n\

printf(\ List_Delete(L,2);

List_Travel(L,Display); printf(\执行操作:\\n\

printf(\ GetElem(L,2,e); Display(ELEM); List_Travel(L,Display); getchar(); }

6

截图:

链式存储C程序: #include #include typedef int elemtype; typedef int status; #define ERROR -1 #define OK 1

#define OVERFLOW 2008 typedef struct Lnode{

elemtype data;

struct Lnode * next; } * Linklist; //头指针

status InitLinklist(Linklist & name) {

name=(Linklist)malloc(sizeof(Lnode));

if(!name)return ERROR; name->next=0;//定义指针域为空 return OK; }

status ListInsert(Linklist & name, int num, elemtype elem)

{

//在带头节点的单链表name中第i个位置之前插入元素elem

Linklist p;

7

p= name; int i=0;

while(p && inext;i++;}//寻找第num-1个节点并将P指向他

if(!p||i>num-1) return ERROR; Linklist temp; temp=(Linklist)malloc(sizeof(Lnode)); }

status ListDelete(Linklist & name,int num) { //在带头结点的单链表name中删除第num个数据元素元素 Linklist p;

}

status GetElem(Linklist & name, int num, elemtype & elem) {

Linklist p;

p=name->next;

p=name; int i=0;

while(p&&inext;i++;}

if(!p||i>num-1) return ERROR; Linklist temp=p->next;

p->next=p->next->next;//即使是删除最后一个元素,空指针也能继承 temp->data=elem; temp->next=p->next; p->next=temp; return OK;

free(temp);

int i=1; while(p && inext;++i;} if(!p||i>num) return ERROR; elem=p->data; return OK; }

status ListChange(Linklist & name, int num, elemtype elem) {

Linklist p;

p=name->next; int i=1;

while(p&&inext;} p->data=elem;

return OK;

}

status ListTravel(Linklist name, status (* visit) (elemtype i))

8

{

Linklist p;

p=name;int i=1; do{ p=p->next; printf(\第%d个元素为:\

(* visit)(p->data);

i++;

//注意:先移动指针再调用显示函数,因为do while 循环的特点是,先执行循环体

再判断while后的条件是否成立

}while(p->next); return OK;

}

status Display(elemtype i){ printf(\return OK;

}

status main()

{Linklist L; elemtype elem; int i;

printf(\执行操作:\\nInitLinklist(L)\\nfor(i=1;i<=5;i++)\\n{ListInsert(L,i,i);}\\n\InitLinklist(L);

for(i=1;i<=5;i++){ListInsert(L,i,i);} ListTravel(L,Display);

printf(\执行操作:\\nListChange(L,2,99)\\n\ListChange(L,2,99);

ListTravel(L,Display);

printf(\执行操作:\\nListInsert(L,6,6);\\n\

ListInsert(L,6,6);

ListTravel(L,Display);

printf(\执行操作:\\nGetElem(L,3,elem);\\nDisplay(elem);\\n\GetElem(L,3,elem); Display(elem);

ListTravel(L,Display);

printf(\执行操作:\\nListDelete(L,1);\\n\ListDelete(L,1);

ListTravel(L,Display); getchar(); return OK; }

截图:

9

10

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库数据结构实验报告(2)在线全文阅读。

数据结构实验报告(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/303809.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: