#include <iostream>
using namespace std;
class book //创建一个book类
{
public:
int num;
double price;
book *next;
};
book *head=NULL;//将头节点赋值为空
book *creat()//创建链表函数
{
book *p1,*p2;//p1指向新开辟的对象,p2指向后一个节点
p1=new book;
head=p1;
p2=p1;//先将3个指针指向同一个节点
cout<<"请输入图书的编号,以0结束"<<endl;
cin>>p1->num;//如果输入num不为0 将继续输入price
if(p1->num!=0)
{
cout<<"请输入图书的价格:"<<endl;
cin>>p1->price;
}
else//如果等于0 将删除对象,令后一对象为空,并且 返回头指针
{
delete p1;
p2=NULL;
p2->next=NULL;
return head;
}
while(p1->num!=0)//不断的输入 num and price,until num为0;
{
p2=p1;
p1=new book;
cout<<"请输入图书编号,以0结束"<<endl;
cin>>p1->num;
if(p1->num!=0)
{
cout<<"请输入图书的价格:"<<endl;
cin>>p1->price;
}
p2->next=p1;
}
delete p1;//如果等于0 将删除对象,令后一对象为空,并且 返回头指针
p2->next=NULL;
return head;
}
void showbook(book *head)
{
cout<<endl;
cout<<"图书信息如下:"<<endl;
while(head)
{
cout<<"图书编号:"<<head->num <<'\t';
cout<<"图书的价格:"<<head->price <<endl;
head=head->next;
}
}
int main()
{
book *head=NULL;//定义一个头指针
head=creat();//调用creat函数,创造链表
showbook(head);//展示链表
return 0;
}
c++图书编号与价格 链表的创建及显示
最新推荐文章于 2023-11-13 13:30:14 发布