一、源碼簡介
用純C語言利用鏈表實(shí)現(xiàn)的可以記錄姓名、手機(jī)號管理的一套模擬管理系統(tǒng)??梢詫μ柎a和人名進(jìn)行增刪改查操作,是C語言課程設(shè)計或鍛煉鏈表的最佳項目!
二、運(yùn)行截圖
菜單頁,可以使用鍵盤上下選擇,以動態(tài)效果顯示
通訊錄列表
三、源碼解析
這套源碼的核心在于使用了鏈表,而且是雙向鏈表,程序采用雙向循環(huán)鏈表結(jié)構(gòu),這樣可以滿足目錄可以自由上下過渡,而不像單鏈表那樣反方向需要重新遍歷,頭結(jié)點(diǎn)用來表示當(dāng)前通訊錄的人數(shù)等信息
程序最大特點(diǎn)是主菜單,用戶列表以及每個結(jié)點(diǎn)的操作屬性菜單均采用上W-A-S-D才選擇,回車確
程序核心功能有search()動態(tài)搜索函數(shù),creat()創(chuàng)建函數(shù),list()瀏覽函數(shù)構(gòu)
首先,是節(jié)點(diǎn)成員,為雙向鏈表需要兩個指針,定義如下:
typedef struct person //結(jié)構(gòu)體屬性 { char count[10]; //序號 char name[LENTH]; //姓名 char number[LENTH]; //電話號碼 struct person *prior; //前驅(qū)指針 struct person *next; //后繼指針 }node;
核心操作增刪改查鏈表,和單鏈表思路差不多,無非多一個指針往回搜索較方便,這里不做過多闡述
四、完整源碼
C語言網(wǎng)提供由在職研發(fā)工程師或ACM藍(lán)橋杯競賽優(yōu)秀選手錄制的視頻教程,并配有習(xí)題和答疑,點(diǎn)擊了解:
一點(diǎn)編程也不會寫的:零基礎(chǔ)C語言學(xué)練課程
解決困擾你多年的C語言疑難雜癥特性的C語言進(jìn)階課程
從零到寫出一個爬蟲的Python編程課程
只會語法寫不出代碼?手把手帶你寫100個編程真題的編程百練課程
信息學(xué)奧賽或C++選手的 必學(xué)C++課程
藍(lán)橋杯ACM、信息學(xué)奧賽的必學(xué)課程:算法競賽課入門課程
手把手講解近五年真題的藍(lán)橋杯輔導(dǎo)課程