30/09/2018, 18:30

Cần giúp đỡ sửa code danh sách liên kết đơn

tình hình là em chỉ code đơn giản là nhập và xuất dữ liệu , nhưng chỉ nhập được n(số phần tử ) , không nhập được các phần tử , các anh chịn giúp em với !!!

#include"iostream"
using namespace std;
class node{
	private:
		int data;
		node *pNext;
	friend class list;
};
class list{
	private:
		node *pHead;
		node *pTail;
	public:
		void Init(list &l)   // khoi tao du lieu
		{
			l.pHead=l.pTail=NULL;
		}
		node* getNode(int x)  // du lieu dua vao data
		{
			// cap phat 1 cai node
			node *p;
			p=new node;
			if(p==NULL)
			{
				return NULL;
			}
			else
			{
				p->data=x;   // luu x vao data
				p->pNext=NULL;  // khoi tao moi lien ket (p next)
				return p;
			}
		}
		void addHead(list &l,node *p)
		{
			if(l.pHead==NULL)  // ds rong
			   l.pHead=l.pTail=p;
			else
			   {
			   	  p->pNext=l.pHead;   //p quang day de tham gia vao danh sach
			   	  l.pHead=p;
			   }
		}
		void inp(list l)
		{
			int n,i,x;
			cout<<"
 nhap n: ";
			cin>>n;
			for(i=1;i<=n;i++)
			{
			   	node *p=getNode(x);    // dua data vao node p,tao ra node p;
				addHead(l,p);
			}
		}
		void outp(list l)
		{
			for(node *p=l.pHead;p!=NULL;p=p->pNext)
			{
				cout<<p->data;
			}
		}
};
int main()
{
	list l;
	l.inp(l);
	l.outp(l);
}
Pham Van Hai viết 20:40 ngày 30/09/2018

Trong hàm inp, bạn chưa nhạp giá trị của x

void inp(list l)
{
	int n,i,x;
	cout<<"\n nhap n: ";
	cin>>n;
	for(i=1;i<=n;i++)
	{
		cin >> x;
		node *p=getNode(x);    // dua data vao node p,tao ra node p;
		addHead(l,p);
	}
}
minh viết 20:46 ngày 30/09/2018

a gì cho em hỏi , tại sao khi nhập xog rồi xuất đc rồi lại hiện lên cái n ày ạ

Gió viết 20:40 ngày 30/09/2018

void inp(list & L)…

minh viết 20:40 ngày 30/09/2018

chân thành cảm ơn sự giúp đỡ của 2 anh @Pham_Van_Hai @Gio

Bài liên quan
0