双向循环链表的创建_双向循环链表的建立

2020-02-28 其他范文 下载本文

双向循环链表的创建由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“双向循环链表的建立”。

#include #include #define OVERFLOW-2 #define ERROR 0 #define OK 1 typedef int status;//双向循环链表的存储结构 typedef struct DuLNode {

int data;

int Length;

struct DuLNode *prior;

struct DuLNode *next;} DuLNode,*DuLinkList;//构建一个空的双向循环链表 int InitList(DuLNode **p){

*p=(DuLNode *)malloc(sizeof(DuLNode));if(*p){

(*p)->next=(*p)->prior=*p;

(*p)->Length=0;} else

exit(OVERFLOW);} //双向循环链表的创建

int Create(DuLinkList &L,int n){ //输入n个元素的值,建立带头结点的双线循环链表L DuLinkList p=L,q;

int i;for(i=1;i

q=(DuLinkList)malloc(sizeof(DuLNode));/*申请一个结点*/

printf(“请输入第%d个元素的值:”,i);

scanf(“%d”,&q->data);

p->next =q;

q->prior=p;

q->next=L;

L->prior =q;

p=q;

L->Length ++;} } //结点的输出

int Display(DuLinkList L){

DuLinkList p;

printf(“双向循环链表中的结点的数据为:”);

for(p=L->next;p->next!=L;){

printf(“%d”,p->data);

printf(“ ”);

p=p->next;}

printf(“%dn”,p->data);} //主函数实现双向循环链表的创建

int main(){

DuLinkList L;int n,i;

InitList(&L);printf(“请输入创建循环结点的个数:”);scanf(“%d”,&n);Create(L,n);Display(L);printf(“双向循环链表中结点的个数为:%dn”,L->Length);

return 0;}

《双向循环链表的创建.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
双向循环链表的创建
点击下载文档
相关专题 双向循环链表的建立 双向 链表 双向循环链表的建立 双向 链表
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文