資料結構課設1

2021-03-04 09:14:22 字數 1926 閱讀 7077

南通大學電腦科學

與技術學院

資料結構課程設計

班級:軟體外包111

學號:1113122001

姓名:張艷嬌

通訊錄管理系統的設計與實現

班級:軟外111學號:1113122001姓名:張艷嬌

一需求分析

通訊錄是用來記載和查詢聯絡人通訊資訊的工具。電子通訊錄已成為手機、電子詞典等電子裝置中不可缺少的工具軟體!請設計乙個能夠滿足這種話需求的軟體。

(1)設計要求:

①設計通訊錄資料的邏輯結構和物理結構

②通訊錄至少包括下列資料資訊:姓名、**、單位

③完成輸入,顯示,查詢,插入,刪除,儲存,讀入,排序,修改,移動,退出等基本功能

④軟體易用,操作簡單

⑤根據自己使用通訊錄的體會,擴充其他功能,如按姓名查詢,按號碼查詢,按序號刪除等

⑥設計足夠多的測試用例

(2)案例設計:

合理的設計:

id 姓名單位住址**

1 張三計001 2-102 130********

2 李四計002 3-103 138********

3 王五計003 2-204 136********

4 陳六計001 3-303 136********

不合理的設計:

6 錢八軟002 3-201 136********

二概要設計

(1)功能劃分與定義,功能結構圖

(2)資料的邏輯設計、抽象的資料型別描述

struct t

;三詳細設計

(1) 儲存設計:

0 1 2 3 4 5in

(2) 介面設計:

資料的輸入輸出均從文字中實現

資料的輸入讀取:

資料的輸出儲存(實現新增操作後的輸出):

(3) 各功能的演算法描述:

①輸入讀取資料:

int input(t*pt)//從文字中讀取資料

for(i=0;in;i++,pt++)//開啟成功後一一讀取,直到讀完為止

in.close();

cout《資料讀入成功n";

cout< return i-1;//順便統計讀入的資料個數

}②輸出儲存資料:

int output(t*pt,int size)//把資料寫入檔案

for(int i=0;i

out.close();

return 1;

} ③插入資訊:

int insert(t*pt,int size)//往檔案中插入資料

if(output(pt,size+size))//判斷資料寫入是否成功

else

return size+size;

}④刪除資訊:

void delete(t*pt,int size)//按序號刪除資訊

if(!strcmp(pt->id,id))//找到了,刪除資訊!

}else

}⑤按姓名查詢:

void search_name(t*pt,int size)//按姓名查詢資訊

if(!strcmp(pt->name,name))//找到後輸出

else

}⑥按**查詢:

void search_tel(t*pt,int size)//按**查詢資訊

if(!strcmp(pt->tel,tel))//找到後輸出

{cout《查到的資訊為n";

cout< cout<<"id\t姓名\t單位\t住址\t**\n";

cout< cout

資料結構課設作業

利用佇列求解迷宮路徑。利用檔案的輸入輸出 查詢排序演算法建立乙個航班資訊順序表查詢系統。1.2.1迷宮問題 本程式用以求出任意輸入的入口和出口間的最短路徑和最長路徑。1.2.2航班息查詢系統設計 建立乙個順序表航班資訊查詢系統,用於管理和使用。m 12,n 12,move 4 vg1034 山東湖北...

資料結構課設分組

汗水和豐收是忠實的朋友,勤學和知識是一對最美麗的戀人。注意 1綠色 劉志偉,class txt 2紅色 宋文,class txt 3藍色 嚴常龍,135 class txt 200509010601 邱程電腦科學與技術 計算機應用軟體 計算機應用 軟體 05 11 31200713 許令 資訊與計算...

資料結構課設選題

26 紙牌遊戲 21點 21點 是一種古老的撲克牌遊戲,遊戲規則是,各個參與者設法使自己的牌達到總分21而不超過這個數值。撲克牌的分值取它們的面值,a充當1分或者11分 由玩家自己確定選擇一種分值 j,q和k人頭牌都是10分。莊家對付1 7個玩家。在一局開始時,包括莊家在內的所有參與者都有兩張牌。玩...