#include <iostream>
#include <stdlib.h>
using namespace std;
class AD
{
public:
int num;
bool use;
AD*
next;
};
typedef AD*
point;
void create(point &
pHead)
{
pHead=
new AD;
pHead->num=-
1;
pHead->use=
false;
pHead->next=
NULL;
cout<<
"创建成功"<<
endl;
return;
}
void insert(point pHead)
{
point pCur=
pHead;
while(pCur->next!=
NULL)
{
pCur=pCur->
next;
}
point pPro=
new AD;
cout<<
"请输入要插入的值"<<
endl;
cin>>pPro->
num;
pPro->use=
false;
pPro->next=
NULL;
pCur->next=
pPro;
cout<<
"插入成功"<<
endl;
return;
}
void print(point pHead)
{
cout<<
"队列中的情况:";
int flg=
0;
while(pHead->next!=
NULL)
{
flg=
1;
pHead=pHead->
next;
cout<<pHead->num<<
" ";
}
if(!
flg)
cout<<
"啥玩意儿也没有!!";
cout<<
endl;
}
void delet(point pHead)
{
cout<<
"请输入要删除的值"<<
endl;
int rt;
cin>>
rt;
point pCur=
pHead;
int flg=
0;
while(pCur->next!=
NULL)
{
if(pCur->next->num==
rt)
{
flg=
1;
pCur->next=pCur->next->
next;
cout<<
"删除成功!!"<<
endl;
}
pCur=pCur->
next;
}
if(!
flg)
{
cout<<
"要删除的值不存在!!"<<
endl;
}
}
void instead(point pHead)
{
cout<<
"请输入要替换的值"<<
endl;
int rt;
cin>>
rt;
cout<<
"请输入要成替换的值"<<
endl;
int dd;
cin>>
dd;
point pCur=
pHead;
int flg=
0;
while(pCur->next!=
NULL)
{
if(pCur->next->num==
rt)
{
flg=
1;
pCur->next->num=
dd;
cout<<
"替换成功!!"<<
endl;
}
pCur=pCur->
next;
}
if(!
flg)
{
cout<<
"要替换的值不存在!!"<<
endl;
}
}
void destory(point pHead)
{
point pCur=pHead->
next;
while(pHead->next!=
NULL)
{
delete pHead;
pHead =
pCur;
pCur=pCur->
next;
}
cout<<
"删除链表成功!!"<<
endl;
return;
}
int main()
{
point a;
create(a);
int op;
while(
1)
{
cout<<
"请输入要进行的操作:0打印,1插入,2删除,3替换,4退出"<<
endl;
cin>>
op;
switch(op)
{
case 1:
insert(a);
break;
case 2:
delet(a);
break;
case 0:
print(a);
break;
case 3:
instead(a);
break;
case 4:
destory(a);
exit(0);
}
}
return 0;
}
转载于:https://www.cnblogs.com/jiangnanyanyuchen/p/6814374.html
转载请注明原文地址: https://win8.8miu.com/read-23624.html