Xem giùm em đoạn code . Em chỉ nhập được 2 Node , rồi mày nó đứng im . Em cảm ơn
#include <iostream>
using namespace std ;
struct Book{
int ma ;
char ten[150] ;
int sotrang ;
};
struct Node{
Book *data ;
Node *pNext ;
};
struct SingleList{
Node *pHead ;
};
void init(SingleList *&list)
{
list->pHead=NULL ;
}
Node *CreateNode(Book *d)
{
Node *pNode = new Node ;
if(pNode!=NULL)
{
pNode->data = d;
pNode->pNext=NULL ;
}
else
{
cout<<"cap phat bo nho that bai\n" ;
}
return pNode ;
}
void NhapBook(Book *&d)
{
cout<<"Ma: ";
cin>>d->ma ;
cout<<"Ten: ";
cin.ignore();
gets(d->ten) ;
cout<<"So trang: ";
cin>>d->sotrang ;
}
void InserLast(SingleList *&list,Book *d)
{
Node *pNode = CreateNode(d) ;
if(list->pHead==NULL)
{
list->pHead=pNode ;
}
Node *pTmp=list->pHead ;
while(pTmp->pNext!=NULL)
{
pTmp=pTmp->pNext ;
}
pTmp->pNext=pNode ;
}
void PrintNode(SingleList *&list)
{
if(list->pHead==NULL)
{
cout<<"Danh sach lien ket rong\n";
}
Node *pTmp=list->pHead ;
while(pTmp!=NULL)
{
cout<<pTmp->data->ma<<"\t"<<pTmp->data->sotrang<<"\t"<<pTmp->data->ten<<endl ;
pTmp=pTmp->pNext ;
}
}
int main()
{
SingleList *list = new SingleList ;
init(list) ;
for(int i=0 ; i<5 ; i++)
{
Book *p = new Book ;
NhapBook(p) ;
InserLast(list,p) ;
}
}