Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 2 của 2
  1. #1
    Ngày tham gia
    Sep 2015
    Đang ở
    89 Tam Trinh - Hoàng Mai - Hà Nội
    Bài viết
    0

    thắc mắc về danh sách liên kết và con trỏ .

    Mã:
    #include<stdio.h>
    #include<conio.h>
    struct node
    {
    	int value;
    	node* pnext;
    };
    struct list
    {
    	node* head;
    	node* tail;
    };
    void intit(list &l)
    {
    	l.head=NULL;
    	l.tail=NULL;
    }
    node* creatnode(int a)
    {
    	node* p=new node;
    	p->value=a;
    	p->pnext=NULL;
    	return p;
    }
    void printfdslk(list l)
    {
    	if(l.head!=NULL)
    	{
    	node*p=l.head;
    	while(p!=NULL)
    	{
    		printf("%d",p->value);
    		p=p->pnext;
    	}
    	}
    }
    void addtail(list &l,node* t)
    {
    		l.tail->pnext=t;
    		l.tail=t;
    }
    void main()
    {
    	list l;
    	l.head=NULL;
    	l.tail=NULL;
    	node*t=creatnode(99);
    	node*t2=creatnode(98);
    	addtail(l,t);
    	addtail(l,t2);
    	printfdslk(l);
    bi loi nay là sao moi người

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    addtail của bạn bị sai rồi. Vì bạn quên không xét trường hợp là danh sách đang rỗng ==> head và tail = NULL;

    Mã:
    void addtail(list &l,node* t)
    {
       if (l.tail != NULL)
          l.tail->pnext = t;
       l.tail=t;
    	
       if (l.head == NULL)
          l.head = t;
    }

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •