# include & ltiostream & gt
使用?命名空間?std
struct?節點?
{?
int?a;?
節點?*?接下來;?
};
int?n;?//鏈接列表中的節點數
節點?*?creat()?
{?
struct?節點?*?l;?
struct?節點?*?p 1;?
n = 0;?
L=?新的?節點;
p1=?新的?節點;
cout & lt& lt"請輸入壹個整數並按回車鍵,輸入0,然後按回車鍵結束輸入!"& lt& ltendl
CIN & gt;& gtp 1->;a;?
l-& gt;next = NULL
while(p 1->;答!=0)//a=0退出?
{
n++;?
if(n==1)?
l-& gt;next = p 1;?
p 1->;下壹個=新?節點;?
CIN & gt;& gtp 1->;下壹個-& gt;a;?
p 1 = p 1->;接下來;
}?
p 1->;next = NULL//將鏈表的末尾指向空?
return(L);?
}
作廢?打印(節點?*?L)//因為傳入的實參是指針類型,所以形參也要定義為指針類型。
{?
節點?* p;?
cout & lt& lt" \ n輸入的數據是"
p = L-& gt;接下來;
而(p!=NULL)?
{?
cout & lt& ltp->;a & lt& ltendl?
p = p-& gt;接下來;?
}
}
作廢?插入(節點?*?l,int?I,int?e)
{
節點?*p,* temp
int?j;
p = L-& gt;接下來;
for(j = 1;j & lt我?& amp& amp?p!= NULLj++)
p = p-& gt;接下來;?
如果(i & gtj)
{
cout & lt& lt"鏈接列表只有"
返回;
}
temp = p-& gt;接下來;
p->;下壹個=新?節點;
p->;下壹個-& gt;a = e;
p = p-& gt;接下來;
p->;next = temp
n++;?
}
int?main()?
{?
節點?*?l;//因為creat()函數返回的是指向結構的指針,所以應該定義為指向結構的指針變量?
l = creat();?
打印(左);
插入(L,3,3);
打印(左);
回歸?0;//在以l為頭節點的單鏈表的第I個位置插入值為e的節點。?實現# include
使用?命名空間?std
struct?節點?
{?
int?a;?
節點?*?接下來;?
};
int?n;?//鏈接列表中的節點數
節點?*?creat()?
{?
struct?節點?*?l;?
struct?節點?*?p 1;?
n = 0;?
L=?新的?節點;
l-& gt;next = NULL
p1=?新的?節點;
cout & lt& lt"請輸入壹個整數並按回車鍵,輸入0,然後按回車鍵結束輸入!"& lt& ltendl
CIN & gt;& gtp 1->;a;?
while(p 1->;答?!=0)//a=0退出?
{
n++;?
if(n==1)?
l-& gt;next = p 1;?
p 1->;下壹個=新?節點;?
CIN & gt;& gtp 1->;下壹個-& gt;a;?
if(p 1->;下壹個-& gt;a==0)
打破;
p 1 = p 1->;接下來;
}
p 1->;next = NULL//將鏈表的末尾指向空?
return(L);?
}
作廢?打印(節點?*?l)
{?
節點?* p;?
cout & lt& lt" \ n輸入的數據是"
p = L-& gt;接下來;
而(p!=NULL)?
{?
cout & lt& ltp->;a & lt& ltendl?
p = p-& gt;接下來;?
}
}
作廢?插入(節點?*?l,int?I,int?E)//i:第I個節點,其中e是插入的值。
{
節點?*p,* temp
int?j;
p = L;
for(j = 0;j & lt我?& amp& amp?p->;下壹個?!= NULLj++)
p = p-& gt;接下來;?
如果(i & gtj)
{
cout & lt& lt"鏈接列表只有"
返回;
}
temp = p-& gt;接下來;
p->;下壹個=新?節點;
p->;下壹個-& gt;a = e;
p = p-& gt;接下來;
p->;next = temp
n++;?
}
int?main()?
{?
節點?*?l;
l = creat();?
打印(左);
插入(L,3,4);
打印(左);
回歸?0;
}