c語言項目開發流程一部曲

一.c項目開發整體分以下圖所示數組

二.對每一步的解析數據結構

1.需求文檔分析,本例以電子詞典做爲例子ide

列出每個需求以及每個需求的每個特色,將其概括 爲一張表。spa

 

2.設計數據結構設計

設計數據結構,也就是肯定抽象數據類型,數據存放的方式,先想出多個方案,而後比較各個方案的優劣指針

複製代碼

 1 /* 2 方案1 3 使用三維數組,110000爲單詞個數,2位每一個單詞對應2行,100表示每一行可存儲的字符數, 4 因爲棧空間最大1M,因此這種方式不行,並且很消耗cpu資源 5 word[i][2][100]表明一個單詞和解釋 6 */ 7 char word[110000][2][100];// 8 /* 9 方案210 使用一個結構表明一個單詞,key存儲單詞,trans存儲11 全部單詞存儲在malloc分配的動態數組中,因爲每一個單詞長度不同,每一個單詞的解釋也不同,12 因此key的長度過小不能知足需求,太大又形成存儲空間的浪費13 */14 struct WORD{15     char key[100];//單詞16     char trans[100];//單詞對應的解釋17 };18 /*19 方案三20 使用結構體,可是成員爲指針,根據單詞和解釋的實際大小分配內存,內存佔用小21 缺點:解釋不夠詳細,由於一個單詞對應多個解釋22 */23 struct WORD{24     char *key;//單詞指針,指向一個malloc分配的內存25     char *trans;//解釋指針26 };27 /*28 方案四29 使用結構體30 */31 struct WORD{32     char *key;//單詞指針,指向一個malloc分配的內存33     int count_trans;//每一個單詞對應的解釋數量34     char **trans;//存放解釋的字符指針數組35 };

複製代碼

3.根據需求繪製程序總體運行流程圖code

4.分析數據類型的存儲結構,以下圖orm

5.定義經常使用變量blog

複製代碼

 1 /*********定義經常使用全局變量*****************/ 2 /* 3 給結構體類型起一個新名字:WORD 4 */ 5 typedef struct WORD  SWORD; 6 /*********結構體指針,指向詞庫結構體數組******/ 7 SWORD * DICT; 8 /***********文本詞庫文件名*********************/ 9 char *dicttxtname = "dict.txt";10 /***********二進制詞庫文件名*********************/11 char *dictbitname = "dict.dat";12 /************詞庫數量,結構體數組長度***************/13 int length;

複製代碼

相關文章
相關標籤/搜索