Book* CreateHead() { Book *head,*p1,*p2;//定义三个指向Book的类,返回值给head p1=new Book; head=p1; p2=p1;//将三个结点一起在椎中创建 cout<<"请输入图书编号,以0结束"<>p1->num; if ( p1->num!=0 ) { cout<<"请输入图书价格"<>p1->price; } else { delete p1; p2=NULL; return head; } while ( p1->num!=0 ) { p2=p1;//这步很重要,意思为将P2设为当前结点,然后用p1继续创建,用培p2->next指向p1 p1=new Book; cout<<"请输入图书编号,以0结束"<>p1->num; if ( p1->num!=0 ) { cout<<"请输入图书价格"<>p1->price; } p2->next=p1; } delete p1; p2->next=NULL; return head; }