首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

初学者有关问题,哪位达人帮忙解惑

2012-09-10 
菜鸟问题,哪位达人帮忙解惑?下面链表建立的书本知识,请哪位达人解惑...,小弟不胜感激!!!#include iostrea

菜鸟问题,哪位达人帮忙解惑?
下面链表建立的书本知识,请哪位达人解惑...,小弟不胜感激!!!

#include <iostream.h>
struct link
{
int num;/*结点数据域*/
link *pleft;
link *pright;/*结点链域*/
};
void main(void)
{
link *list,*head,*tail;
list = new link;/*新建一个结点*/
cout<<"input num";
cin>>list->num;
cout<<"\n";
list->pleft = NULL;
list->pright = NULL; /*把表头结点的链域置空*/
head = list;/*这个有什么作用?请达人解惑*/
tail = list;/*这个有什么作用?请达人解惑*/
while(tail->num)/*这个循环是有什么作用的?请达人解惑*/
{
cout<<"please input num";
list = new link;/*建立新结点*/
cin>>list->num;
cout<<"\n";
list->pleft = tail;
list->pright = NULL;
tail->pright = list;
tail = list;
}
list = head;/*这个有什么作用?请达人解惑*/
while(list->pright!=NULL)
{
cout<<list->num<<" ";
list = list->prihgt;
}
cout<<list->num<<"\n";

}

[解决办法]
链表的创建过程你懂不?
head是链表的头,tail是链表的尾。
list是一个空节点,head和tail都指向list表示这个链表是空的。
那个循环是向链表中插入节点的。
最后list = head是把指针指向链表的头,用来依次输出整个链表。

热点排行