本例中,print函數(shù)用于輸出鏈表中各個(gè)結(jié)點(diǎn)數(shù)據(jù)域值。函數(shù)的形參head的初值指向鏈表第一個(gè)結(jié)點(diǎn)。在while語句中,輸出結(jié)點(diǎn)值后,head值被改變,指向下一結(jié)點(diǎn)。若保留頭指針head,則應(yīng)另設(shè)一個(gè)指針變量,把head值賦予它,再用它來替代head.在main函數(shù)中,n為建立結(jié)點(diǎn)的數(shù)目,num為待刪結(jié)點(diǎn)的數(shù)據(jù)域值;head為指向鏈表的頭指針,pnum為指向待插結(jié)點(diǎn)的指針。main函數(shù)中各行的意義是:
第六行輸入所建鏈表的結(jié)點(diǎn)數(shù);
第七行調(diào)creat函數(shù)建立鏈表并把頭指針返回給head;
第八行調(diào)print函數(shù)輸出鏈表;
第十行輸入待刪結(jié)點(diǎn)的學(xué)號(hào);
第十一行調(diào)delete函數(shù)刪除一個(gè)結(jié)點(diǎn);
第十二行調(diào)print函數(shù)輸出鏈表;
第十四行調(diào)malloc函數(shù)分配一個(gè)結(jié)點(diǎn)的內(nèi)存空間, 并把其地址賦予pnum;
第十五行輸入待插入結(jié)點(diǎn)的數(shù)據(jù)域值;
第十六行調(diào)insert函數(shù)插入pnum所指的結(jié)點(diǎn);
第十七行再次調(diào)print函數(shù)輸出鏈表。
從運(yùn)行結(jié)果看,首先建立起3個(gè)結(jié)點(diǎn)的鏈表,并輸出其值;再刪103號(hào)結(jié)點(diǎn),只剩下105,108號(hào)結(jié)點(diǎn);又輸入106號(hào)結(jié)點(diǎn)數(shù)據(jù), 插入后鏈表中的結(jié)點(diǎn)為105,106,108.聯(lián)合"聯(lián)合"也是一種構(gòu)造類型的數(shù)據(jù)結(jié)構(gòu)。 在一個(gè)"聯(lián)合"內(nèi)可以定義多種不同的數(shù)據(jù)類型,一個(gè)被說明為該"聯(lián)合"類型的變量中,允許裝入該"聯(lián)合"所定義的任何一種數(shù)據(jù)。這在前面的各種數(shù)據(jù)類型中都是辦不到的。例如, 定義為整型的變量只能裝入整型數(shù)據(jù),定義為實(shí)型的變量只能賦予實(shí)型數(shù)據(jù)。
相關(guān)推薦:
2012年軟考系統(tǒng)分析師考試60天完美復(fù)習(xí)計(jì)劃
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |