欢迎来到天天文库
浏览记录
ID:59255990
大小:22.73 KB
页数:2页
时间:2020-09-08
《C语言单向循环链表转双向循环链表.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C语言单向循环链表转双向循环链表#include#include#includetypedefstructnode{chardata;structnode*pre;structnode*next;}List;List*create_List(){List*head,*s,*p;charch;head=(List*)malloc(sizeof(List));p=head;head->pre=NULL;while((ch=getchar())!=''){s=(List*)malloc(sizeof(List));s->data=
2、ch;p->next=s;//s->prior=p;p=s;}s->next=head;//head->prior=s;returnhead;}voidsingleToDu(List*h){List*p,*q;p=h;q=p->next;while(q!=h){q->pre=p;p=q;q=q->next;}q->pre=p;}voidprint_List(List*h){List*p;if(h->pre){printf("链表的前驱指针存在,现采用反向遍历");p=h->pre;while(p!=h){printf("-->%c",p->data);p=p->pre;}}else
3、{printf("链表的前驱指针不存在,现采用正向遍历");p=h->next;while(p!=h){printf("-->%c",p->data);p=p->next;}}printf("");}voidmain(){List*head;head=create_List();print_List(head);singleToDu(head);print_List(head);}
此文档下载收益归作者所有