個人通訊錄系統C語言課程設計

2021-03-04 05:38:54 字數 3769 閱讀 2416

華北水利水電大學

《c語言程式設計》

課程設計報告

學院: 管理與經濟學院

專業班級: 工業工程

學生姓名: 唐松祥

學號: 2012142

設計地點: 實驗樓s-5

設計題目: 個人通訊錄管理系統

完成日期: 2023年6月21日

華北水利水電大學

課程設計任務書

設計題目:個人通訊錄管理系統

教研室主任指導教師:閆雒恆、楊雪青2023年06月21日

目錄第一章軟體需求分析說明書

1.1設計軟體的目的分析1

1.2軟體的介面要求1

1.3詳細的功能分析1

1.4設計要求分析1

1.5軟體的資料結構分析1

第二章系統分析與設計

2.1 軟體介面設計2

2.2 軟體的資料(結構)設計2

2.3 軟體的模組圖2

2.4 軟體的流程圖2

第三章軟體的實現

3.1 源程式5

第四章軟體測試

4.1 檔案匯入介面15

4.2 軟體的主介面15

4.3 新增聯絡人模組15

4.4 顯示和查詢聯絡人介面16

4.5 刪除聯絡人模組16

4.6 修改聯絡人模組17

總結與體會18

致謝19

第一章軟體需求分析說明書

1.1設計軟體的目的分析

本軟體要求用c語言建立一通訊錄,輸入姓名、**號碼、住址等資訊,然後對通訊錄進行顯示、查詢、新增、修改及刪除。

1.2軟體的介面要求

本軟體要求軟體的介面簡潔、美觀,讓人一目了然,使用起來方便。於是我設計的軟體首先提示您是否有通訊錄檔案存在,如沒有檔案,則自動建立乙個,如有檔案存在,則提示匯入成功,讓人直觀明白的了解檔案的情況。按任意鍵便可以進入主選單,在主選單上顯示出軟體的功能,通過輸入數字0到5來進行選擇便可以實現你所需要的功能,每個模組進入模組內部實現軟體的具體功能,實現您所需要的功能。

1.3詳細的功能分析

該系統用下面六個功能模組編寫,每個模組執行不同的功能,體現了模組化設計的思想。下面六個模組都是利用c語言檔案,向檔案中新增資料、修改資料、查詢資料、刪除資料和儲存資料。

1.3.1建立檔案

用fopen()建立乙個文字檔案,然後向其中輸入資料(例如,向檔案中輸入「姓名」,「位址」,「號碼」等),並對檔案進行命名。

1.3.2 新增聯絡人

通過鍵盤輸入通訊錄人員的姓名、**號碼、位址資訊便可實現將資訊新增到通訊錄檔案內,新增完畢後,系統會自動詢問你是否繼續新增,如你想繼續新增,再通過鍵盤輸入通訊錄人員的姓名、**號碼、位址資訊即可實現繼續新增。

1.3.3顯示和查詢聯絡人

通過前面第乙個模組打得錄入我們便可以執行第二個模組,通過第二個模組我們可以進行對聯絡人進行顯示和查詢。

我通過呼叫showall()函式來進行顯示所有的聯絡人,showall()函式可以實現逐個顯示聯絡人。

對於查詢聯絡人我則採用了search()函式來進行查詢聯絡人,我提供了兩種查詢方法:按照姓名查詢;按照**號碼查詢。

1.3.4 刪除聯絡人

我呼叫deletecd()函式來實現刪除功能,同樣我也提供給了兩種刪除方法:全部刪除;單個刪除。其中全部刪除會提示是否全部刪除,以免誤刪。

1.3.5 修改聯絡人

我呼叫modify()函式來實現修改功能,我同樣提供了兩種修改方法:對姓名進行修改;對**號碼進行修改。修改完畢後會提示是否據需修改。

1.3.6 儲存退出與不儲存退出

你還在為誤新增、誤修改、誤刪除後悔嗎?還想回到以前的資料嗎?這個擔憂在我的程式中您就不必擔心了,我為程式提供了兩種退出方式:儲存退出;不儲存退出。完全解決您的後顧之憂。

1.4設計要求分析

進一步掌握利用c語言進行程式設計的能力;

進一步理解和運用結構化程式設計的思想和方法;

初步掌握開發乙個小型實用系統的基本方法;

學會除錯乙個較長程式的基本方法;

學會利用流程圖表示演算法。

⑥根據題目要求,運用所學知識,完成設計和實現工作,並按照書寫規範,撰寫課程設計報告。

1.5軟體的資料結構分析

1.5.1 軟體的函式

本軟體採用了不同的函式來進行定義不同模組的功能,通過呼叫不同的函式,可以實現不同的功能。軟體中採用了五個主體函式來實現新增聯絡人,修改聯絡人,查詢聯絡人,顯示聯絡人,刪除聯絡人的功能。

1.5.2 檔案的呼叫和儲存

本軟體通過文字方式對使用者所錄入的資訊進行儲存。通過儲存下來的文字,您可以在電腦磁碟中找到您存入檔案的位置,開啟後便可以找到您所錄入的通訊錄資訊。

第二章系統分析與設計

2.1 軟體介面設計

畫出軟體全部輸入、輸出資料的介面,並對每乙個介面進行詳細的操作說明

2.2 軟體的資料(結構)設計

軟體呼叫不同的函式來實現不同的功能,通過反覆呼叫函式來實現反覆輸入。**中通過scanf從鍵盤上輸入不同的數字選項,然後通過swtich case()來實現對不同函式的呼叫。

2.2.1 軟體的檔案功能

軟體採用了文字文件進行訪問,我在c盤建立了乙個txl文字文件用於訪問輸入的資訊,開啟c盤後就能直接看到您錄入的資訊,很方便和快捷。

2.2.2 檔案內部的資料格式

我採用了load()函式來讀取檔案,使用if((fp=fopen("c:\\通訊錄.txt","r"))==null)以唯讀方式開啟判定檔案是否為空,如果不空,則使用fseek(fp,0,2); 檔案位置指標移動到檔案末尾以來進行寫入資料。

使用new()將聯絡人寫入檔案,用if ((fp=fopen("c:\\通訊錄.txt","w"))==null)以只寫的方式來對判定檔案是否為空,如果不為空,則從鍵盤上錄入所需要錄入的資訊存到相應的檔案中。

最後通過fclose(fp)來關閉檔案,回到主介面上等待使用者輸入新的操作。

2.3 軟體的模組圖

軟體的模組圖很直觀的反映出軟體能夠實現的功能,由下面的模組圖可以很直觀的看出我設計的通訊錄軟體能夠方便的實現新增聯絡人、顯示聯絡人、刪除聯絡人、修改聯絡人功能,另外,我設計的軟體還實現了儲存退出和不儲存退出功能,這個功能很獨特。

①在增加聯絡人部分,我用了三個函式呼叫來分別實現錄入聯絡人姓名、號碼、位址。

②在顯示和查詢聯絡人部分,我也有三個模組: 逐個顯示聯絡人,按姓名查詢,按號碼查詢。

③在刪除聯絡人部分,我設計了三個介面,可以實現全部刪除,單個刪除,回到主選單。

④在修改聯絡人模組,我也設計了三個介面,按姓名修改,按號碼修改,回到主選單。

⑤最後我設計了儲存退出和不儲存退出,針對那些修改後卻又後悔修改的使用者需要。

圖2.1軟體的模組圖

2.4 軟體的流程圖

由於程式流程圖較為複雜,我採用了分塊畫出程式流程圖

2.4.1 新增聯絡人程式流程圖

由新增聯絡人的程式流程圖可以看出,在新增聯絡人板塊上,我設計了三種資訊,輸入姓名,輸入**和輸入位址,輸入完成後會提示是否繼續輸入,如果輸入y後則可以繼續輸入,輸入n後返回主選單。

圖2.2新增聯絡人程式流程圖

2.4.2 顯示和查詢聯絡人程式流程圖

在主選單上輸入2後便可以進入顯示和查詢聯絡人的主介面,我為您提供了三個選項,1.顯示全部 2.按姓名查詢 3.

按**查詢。輸入對應的數字便可以實現對應的功能,同理,系統會在您查詢完畢後詢問您是否繼續查詢,操作同上。

圖2.3顯示和查詢聯絡人程式流程圖

2.4.3 刪除聯絡**程圖

在刪除聯絡**程圖上,我設計了全部刪除和單個刪除功能,單個刪除設計了按照姓名刪除和按**號碼刪除兩種選擇,在刪除時,系統都會詢問您是否刪除,以免誤刪。

C語言課程設計通訊錄管理系統

科技大學 本科生課程設計說明書 題目 c語言課程設計 通訊錄管理系統 學生姓名 學號 專業 軟體工程 班級 1 指導教師 通過程式設計,達到理論與實際應用相結合,提高對資訊管理系統的分析能力,能夠根據實際應用,初步實現系統功能模組及演算法的設計,通過程式設計基本實現資訊管理系統。1.採用結構體的形式...

c語言課程設計通訊錄管理系統

課程設計報告書 所屬課程名稱 c語言程式設計 題目通訊錄管理系統 分院電氣與資訊工程分院 專業班級 13電氣班 學號學生姓名 指導教師 2014年6月 15日 目錄第1章題目內容的提出與描述3 第2章軟體的需求分析描述 軟體應具有的功能3 第3章課程設計的目的3 第4章軟體的總體設計和詳細設計4 第...

個人通訊錄管理c語言課程設計

安徽工業大學 c語言課程設計 實習綜合報告 課題名稱 個人通訊錄管理系統 實習成員 王剛 學號 109074372 專業班級 網路工程103班 指導教師 鄭嘯老師 目錄一 問題描述2 二.各功能流程圖與設計思路3 2.1顯示模組3 2.2查詢模組4.2.3新增模組6 2.4刪除模組8 2.5修改模組...