欢迎来到天天文库
浏览记录
ID:9804790
大小:41.50 KB
页数:4页
时间:2018-05-10
《编写一个c++程序,实现创建、输出链表,查找、插入、删除结点等功能:》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、编写一个C++程序,实现创建、输出链表,查找、插入、删除结点等功能:#includestructnode//定义链表的结点{intdata;//要存在结点的整数node*next;//指向下一结点的指针};node*createList(int);//创建链表函数voidoutputList(node*);//输出链表函数node*findList(int,node*);//查找结点函数node*insertList(int,node*);//插入结点函数node*deleteList(i
2、nt,node*);//删除结点函数intmain()//主函数{intn,find,insert,delet;//定义常量node*listinsert=NULL;//定义接受插入后链表的结构指针node*listhead=NULL;//定义头指针node*listdelete=NULL;//定义接受删除后链表的结构指针cout<<"pleaseenterthenumberofnode:";//要创建链表的大小cin>>n;listhead=createList(n);//调用创建链表函数outputList(
3、listhead);//输出创建的链表cout<<"pleaseenterthenumberoffinding:";//输入要查找的结点cin>>find;findList(find,listhead);//调用查找结点函数cout<<"pleaseenterthenumberofinserting:";//输入要插入的结点cin>>insert;listinsert=insertList(insert,listhead);//调用插入结点函数outputList(listinsert);cout<<"pleas
4、eenterthenumberofdeleting:";//输入要删除的结点cin>>delet;listdelete=deleteList(delet,listhead);//调用删除结点函数outputList(listdelete);return0;}node*createList(intn)//创建链表函数{node*temp=NULL,*tail=NULL,*head=NULL;intnum;cout<<"pleaseenterthe1node:";//创建第一个结点cin>>num;head=newn
5、ode;//给头结点分配动态存储空间if(head==NULL)//判断是否给头结点分配了存储空间{cout<<"Notmemoryavailable!";returnNULL;}else{head->data=num;//给结点赋值head->next=NULL;//给指针域赋值tail=head;//移动尾指针所指向的位置}for(inti=0;i>num;temp=newnode;//给新结
6、点分配动态存储空间if(temp==NULL)//动态空间分配失败{cout<<"Notmemoryavailable!";returnhead;}else{temp->data=num;//为新结点赋值temp->next=NULL;//为新结点tail->next=temp;//将新建结点连接到链表的后面tail=temp;//尾指针指向链表的最后一个结点}}returnhead;}voidoutputList(node*head)//输出链表函数{node*curnode;//定义一个动态查找指针curno
7、de=head;//将动态指针指向头结点while(curnode)//输出每个结点{cout<data;if(curnode->next){cout<<"->";}curnode=curnode->next;}cout<data==n){cout<<"
8、Havefind"<next;}cout<<"Sorry!Notfind"<
此文档下载收益归作者所有