- 相關(guān)推薦
C語言編程練習(xí)
習(xí)題描述
本程序的功能是對中國導(dǎo)航的數(shù)據(jù)中的部分道路情況數(shù)據(jù)進行整理,分析,查詢,排序。
原始數(shù)據(jù)存儲在一個GTBL.dat的二進制文件中,具體的文件格式請參照ReveseTableFormat.xls 中的“逆引表格式”sheet.
在Kiwi格式中,每個道路都是被賦予了獨一無二的編號,這個編號叫做LinkID,在GTBL.dat這個文件中存儲著部分道路情況的數(shù)據(jù),他們是無序存儲的(針對LinkID來說是無序的)。
提供的功能:
1) 讀取GTBL.dat, 根據(jù)LinkID重新排序輸出到新的二進制文件,格式同 ”逆引表格式”。
2) 檢索:
a. 根據(jù)LinkID查找指定的Link的相關(guān)情報并輸出到控制臺或者文件(文本格式)。
b. 查找指定 交叉Link列表示Class番號 的所有Link的集合。
c. 查找岔路數(shù)> n 的所有Link的集合, n由用戶輸入。
d. 指定道路名稱檢索。
輸出格式:
#linked=1234;roadnameflag=1;brunch=2;dispclass=3; roadname=青年大街#(如果沒有名稱(roadnameflag == 0 ), 則不輸出roadname=青年大街這個條目)
如果查到的紀(jì)錄的個數(shù)>5個,則輸出到指定文件中(文件放在當(dāng)前目錄中,請用 searchresultxxx.txt 命名, xxx是檢索次數(shù)的記錄,比如第一次檢索,則xxx是 001, 以此類推。)
3) 從Link情報輸入文件中讀取指定的Link情報,插入到GTBL.dat中并保存,如果對應(yīng)的LinkID已經(jīng)存在,則替換,否則插入。(文件的格式參照ReveseTableFormat.xls 中的“Link情報輸入文件格式”sheet, sourcelink.txt 是一個例子文件,大家可以自己編寫這個文件)。 具體的操作是每按一次回車,就從文件中讀取下一個Link的情報,輸出到界面,并且執(zhí)行插入或者替換操作。
這些插入的記錄需要保存到GTBL.dat和排序后的文件中。
1. 具體要求
1). 需要劃分出至少 3個或者以上的模塊。
2). 具有較高的處理速度
3). 較少的內(nèi)存消耗,比如對于道路名稱,有的link沒有,則不分配空間。
4). 具有較好的維護性和易讀性.
5). 較好的健壯性(錯誤的用戶輸入處理等)
2. 考察點
1) 設(shè)計概念
2) 文件操作
3) 內(nèi)存、指針、字符串操作
4) 鏈表數(shù)據(jù)結(jié)構(gòu)的使用。
5) 排序算法
6) 位運算
4. 其他:
使用控制臺的程序必須有兩個層次的選擇菜單
1) 排序輸出
2) 檢索
a. 指定linkID檢索
b. 指定交叉Link列表示Class番號 檢索
c. 指定查找岔路數(shù) 檢索
d. 指定道路名稱 檢索
3) 更新
使用Windows編程的,則形式可以靈活選擇。
注:學(xué)會用top-down
注意用assert
【C語言編程練習(xí)】相關(guān)文章:
Visual C#的Excel編程03-19
2017年計算機二級考試C語言編程題練習(xí)題及答案03-10
淺析基于C語言的計算機軟件編程實驗03-20
C++編程簡歷表格11-22
c語言心得05-17
網(wǎng)頁編程語言大全03-08
c語言的就業(yè)方向08-11
基礎(chǔ)C++/C語言筆試題分享11-21