1、要向鍊錶中插入新的資料,就要插入乙個新的節點,下面是一幅示意圖:
2、說明:原始鍊錶為1 -> 2 -> 3 -> 4 -> null, 新增乙個資料「5」至第3個節點,只要使第2個節點指向新節點(值為5的節點),使新節點指向原來的第3個節點(值為3的節點)就行了。
3、更通俗地講,就是在「2」與「3」之間的「紅色箭頭」上新增乙個」5「,紅箭頭變為兩個藍箭頭。
4、實現函式:
或tagnode* insertnode(tagnode *phead, int location, int value)
// 如果要插入的是頭結點(location == 1)
if (location == 1)
ncount++;
// 插入非頭結點
while (ptemp->pnext) // 注:當前節點為(ptemp->pnext),而ptemp為當前節點的前乙個節點
else
}printf("位置%d超出鍊錶節點數,是否新增到鍊錶末尾(y/...):\n", location);
scanf("%c", &choose);
getchar();
if (choose == 'y')
return phead;
}
5、main函式中呼叫:void insertnode(tagnode **phead, int location, int value)
// 如果要插入的是頭結點(location == 1)
if (location == 1)
ncount++;
// 插入非頭結點
while (ptemp->pnext) // 注:當前節點為(ptemp->pnext),而ptemp為當前節點的前乙個節點
else
}printf("位置%d超出鍊錶節點數,是否新增到鍊錶末尾(y/...):", location);
scanf("%c", &choose);
getchar();
if (choose == 'y')
}
6、執行結果:int _tmain(int argc, _tchar* argv)
在指定位置插入新列
來由 現有一張表test a,b,c 怎樣在a和b列之間插入新列d 希望結果 test a,d,b,c vivianfdlpw 2005.9 引用請保留此資訊 建立測試環境 create table test a varchar 20 b varchar 20 c varchar 20 go 允許系...
在指定位置插入新列
來由 現有一張表test a,b,c 怎樣在a和b列之間插入新列d 希望結果 test a,d,b,c vivianfdlpw 2005.9 引用請保留此資訊 建立測試環境 create table test a varchar 20 b varchar 20 c varchar 20 go 允許系...
在指定位置插入新列
來由 現有一張表test a,b,c 怎樣在a和b列之間插入新列d 希望結果 test a,d,b,c vivianfdlpw 2005.9 引用請保留此資訊 建立測試環境 create table test a varchar 20 b varchar 20 c varchar 20 go 允許系...