




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、課 程 設(shè) 計(jì) 課程名稱(chēng)面向?qū)ο蟪绦蛟O(shè)計(jì)題目名稱(chēng)電話號(hào)碼管理系統(tǒng)專(zhuān)業(yè)班級(jí)學(xué)生姓名 學(xué) 號(hào)指導(dǎo)教師二一六年十二月十日- 19 -目 錄一、 引言2二、 課程設(shè)計(jì)報(bào)告32.1課程設(shè)計(jì)目的32.2課程設(shè)計(jì)內(nèi)容32.3系統(tǒng)總體方案424詳細(xì)設(shè)計(jì)42.4.1模塊化設(shè)計(jì)42.4.2模塊圖與流程圖5三、 系統(tǒng)調(diào)試與測(cè)試8四、 總結(jié)體會(huì)9五、 參考文獻(xiàn)10附錄代碼11一、 引 言電話號(hào)碼是一連串?dāng)?shù)字的組合,一組號(hào)碼對(duì)應(yīng)一個(gè)電話線,如要撥打至另一方,只需撥對(duì)方的對(duì)應(yīng)號(hào)碼組合。在電話號(hào)碼剛開(kāi)始使用時(shí),號(hào)碼較短,大約只有兩三個(gè)數(shù)字,也只能撥打給附近的電話用戶(hù),逐漸地,電話系統(tǒng)越趨發(fā)達(dá),涵蓋范圍達(dá)全球,電話號(hào)碼也相對(duì)
2、增長(zhǎng)。電話號(hào)碼除了連接電話,也可連接電腦及傳真機(jī)。日益繁多的人際交往使得我們很難搞清楚與每個(gè)人之間的聯(lián)系方式,特別是對(duì)于經(jīng)常出差的人來(lái)說(shuō)更是難,所以電話簿能夠便攜的給我們帶來(lái)所需要的相關(guān)信息。而隨著計(jì)算機(jī)的普及,人們的生活擺脫了傳統(tǒng)式的電話簿,越來(lái)越多的靠計(jì)算機(jī)來(lái)幫助人們記住這些事情,極其簡(jiǎn)便。這就需要有一個(gè)電話簿管理系統(tǒng)以幫助用戶(hù)可以方便的通過(guò)自己的電腦或者手機(jī)上的電話號(hào)碼管理系統(tǒng)來(lái)隨時(shí)查閱自己所需要的信息,而不必再大費(fèi)周折去翻開(kāi)那繁瑣的記事本。電話號(hào)碼管理系統(tǒng)是一個(gè)專(zhuān)門(mén)針對(duì)儲(chǔ)存用戶(hù)聯(lián)系方式以及一些簡(jiǎn)單的個(gè)人信息的實(shí)用管理系統(tǒng),它方便了用戶(hù)對(duì)眾多客戶(hù)、朋友、同事等個(gè)人信息的儲(chǔ)存和快速查閱的功
3、能,大大減少了查找過(guò)程的時(shí)間。本系統(tǒng)以visual c+ 6.0為主要制作工具,以文件儲(chǔ)存的方式作為數(shù)據(jù)庫(kù)的建立基礎(chǔ),建立pbook類(lèi)來(lái)實(shí)現(xiàn)對(duì)電話號(hào)碼的管理即具體的實(shí)現(xiàn)添加聯(lián)系人,刪除聯(lián)系人,查詢(xún)聯(lián)系人以及修改聯(lián)系人等相關(guān)操作。 本系統(tǒng)的主要特色就是提供聯(lián)系人的添加,刪除,修改,和查詢(xún)等的相關(guān)操作并且能夠快速的進(jìn)行查訊所有聯(lián)系人的相關(guān)信息。關(guān)鍵字:信息(Information)電話號(hào)碼管理系統(tǒng)(Telephone number management system)添加(Append)刪除(Delete)修改(Modify)查詢(xún)(Search)二、 課程設(shè)計(jì)報(bào)告2.
4、1課程設(shè)計(jì)目的本次課程設(shè)計(jì)著眼于知識(shí)的運(yùn)用,把平常學(xué)的知識(shí)運(yùn)用到課程實(shí)踐中來(lái),考察我們知識(shí)運(yùn)用能力,對(duì)我們所學(xué)的理論知識(shí)進(jìn)一步深化。具體目的如下:1 鞏固和加深對(duì)C+語(yǔ)言課程基本知識(shí)的理解和掌握。2 掌握C+語(yǔ)言編程和程序調(diào)試的基本技能。3 提高C+語(yǔ)言編程技巧,培養(yǎng)分析問(wèn)題和解決問(wèn)題的能力。4 利用C+語(yǔ)言進(jìn)行基本的軟件開(kāi)發(fā)。5 掌握書(shū)寫(xiě)程序設(shè)計(jì)說(shuō)明文檔的能力。2.2課程設(shè)計(jì)內(nèi)容設(shè)計(jì)一個(gè)實(shí)用的電話號(hào)碼管理系統(tǒng),能以簡(jiǎn)便高效的方式對(duì)電話號(hào)碼進(jìn)行管理,具體要示:電話號(hào)碼信息包括:姓名,電話。(1).刪除:能刪除電話號(hào)碼信息。(2).瀏覽:能夠查看所有的電話號(hào)碼信息。(3).查詢(xún):能夠?qū)崿F(xiàn)指定姓名
5、信息查詢(xún)。(4).修改:能夠修改指定的電話號(hào)碼信息。(5).添加:可以添加想要的電話號(hào)碼信息。(6).保存和打?。耗鼙4婧痛蛴‰娫捥?hào)碼信息。(7).退出:可以隨意退出程序。電話號(hào)碼管理系統(tǒng)退出刪除添加查詢(xún)?yōu)g覽修改2.3系統(tǒng)總體方案該程序所有功能概述:能夠讓用戶(hù)輸入原始記錄,并將其保存在一個(gè)文件中以備往后查詢(xún)等其他操作,并且在每次運(yùn)行系統(tǒng)時(shí)可以讀入保存在文件中的記錄以進(jìn)行各種操作。能夠?qū)崿F(xiàn)查詢(xún)功能,其中查詢(xún)方式又分為兩種,分別是號(hào)碼查詢(xún),按姓名查詢(xún)。其中號(hào)碼查詢(xún)就是直接輸入所要查詢(xún)用戶(hù)的電話號(hào)碼以查找到該用戶(hù)。此查詢(xún)方式較為簡(jiǎn)單;按姓名查詢(xún),用戶(hù)選擇查詢(xún)功能后可以在子菜單中選擇按姓名查詢(xún),即用戶(hù)
6、只需要輸入想要查找的人姓名就可以瀏覽所查找人的所有信息。能夠隨時(shí)增加新的記錄,并將其保存在已有的文件中。能夠修改某條記錄,如想要修改某人的記錄,可以輸入此人名字,然后桌面會(huì)顯示此條記錄,并提示您輸入新的記錄,選擇保存操作,則修改完成。 可以刪除某條記錄,并且保存刪除后的記錄而不影響其他操作。因此,分別建立具有添加、刪除、修改、查詢(xún)等功能的子函數(shù),完成相應(yīng)功能,對(duì)程序?qū)崿F(xiàn)模塊化。為實(shí)現(xiàn)存儲(chǔ)功能,需用到文件的相關(guān)函數(shù),打開(kāi)文件,將添加、修改或刪除的信息存入磁盤(pán)中 24詳細(xì)設(shè)計(jì)2.4.1模塊化設(shè)計(jì)為實(shí)現(xiàn)系統(tǒng)功能,本程序主要分為九個(gè)模塊。他們分別為:輸入一個(gè)信息、刪除一個(gè)信息、查詢(xún)一個(gè)信息、查找、添加
7、、修改一個(gè)信息、瀏覽所有信息、退出該程序。這七個(gè)函數(shù)再通過(guò)主函數(shù)調(diào)用分別得以實(shí)現(xiàn)。主函數(shù),首先提供了程序運(yùn)行時(shí)的界面,列出了信息選項(xiàng),為用戶(hù)提供選擇,以便于決定實(shí)用系統(tǒng)的哪一種功能。然后通過(guò)執(zhí)行多分支選擇語(yǔ)句switch語(yǔ)句,分別實(shí)現(xiàn)其他各個(gè)函數(shù)的調(diào)用功能。其他各個(gè)函數(shù)的功能分別如下:(1) Delete 刪除電話號(hào)碼相關(guān)信息(2) Print 打印電話號(hào)碼相關(guān)信息(3) Sava 保存電話號(hào)碼相關(guān)信息文件(4) Load 讀取電話號(hào)碼相關(guān)信息文件(5) Search 查找電話號(hào)碼相關(guān)信息(6) Append 添加電話號(hào)碼相關(guān)信息(7) Modify 修改電話號(hào)碼相關(guān)信息(8) Exit 退出
8、電話號(hào)碼管理系統(tǒng)2.4.2模塊圖與流程圖主函數(shù) main():是通過(guò)一個(gè)多分支語(yǔ)句switch實(shí)現(xiàn)的,其中有的分支語(yǔ)句中,又包含有一個(gè)多分支語(yǔ)句,每一個(gè)分支語(yǔ)句結(jié)束通過(guò)選擇回到主界面。開(kāi)始主界面switch添加查詢(xún)?yōu)g覽刪除修改結(jié)束讀取文件導(dǎo)入文件添加聯(lián)系人 Append():利用循環(huán)語(yǔ)句或者運(yùn)算符重載對(duì)所要添加的聯(lián)系人進(jìn)行輸入。開(kāi)始輸入聯(lián)系人信息結(jié)束查詢(xún)聯(lián)系人 Search():有兩種方式進(jìn)行查找:1、按電話號(hào)碼進(jìn)行查找,2、按姓名進(jìn)行查找。兩種查找方式均可用字符串比較函數(shù),如果所輸入的姓名或者電話號(hào)碼能在文件中匹配到,則輸出該聯(lián)系人信息,否則說(shuō)明沒(méi)有該聯(lián)系人,返回error。開(kāi)始結(jié)束查找方式
9、電話號(hào)碼姓名方法體方法體刪除聯(lián)系人 Delete():For循環(huán),strcmp比較,定義一個(gè)變量x,并賦值為1,如果輸入的姓名與通訊錄中的相同,然后就將聯(lián)系人的所有基本信息都賦予0,如果輸入的姓名不相同,就將變量的值賦為0,再用if()判斷,如果變量值為0,就輸出輸入姓名有錯(cuò)這一信息。否開(kāi)始輸入姓名i=1姓名相同刪除,i=0結(jié)束是修改聯(lián)系人 Modify(): For循環(huán),strcmp比較,定義一個(gè)變量,如果輸入的姓名與通訊錄中已有的相同,就將改序號(hào)賦給變量,輸出一個(gè)修改的內(nèi)容界面,然后用switch()語(yǔ)句,輸入相應(yīng)的選項(xiàng),分別修改聯(lián)系人的基本信息。開(kāi)始輸入姓名姓名相同提示修改結(jié)束
10、修改姓名修改電話修改郵箱三、 系統(tǒng)調(diào)試與測(cè)試主要的功能界面說(shuō)明以及截圖: (1) 主界面:(2) Append():添加聯(lián)系人(3) Search():查詢(xún)聯(lián)系人(4) Modify():修改聯(lián)系人(1)、修改前(2)、修改后(5) Delete():刪除聯(lián)系人(1)、刪除前(2)、刪除后(6) Print():瀏覽所有聯(lián)系人(1)、修改刪除前(2)、修改刪除后(7) Exit():退出系統(tǒng),保存聯(lián)系人四、 總結(jié)體會(huì)在設(shè)計(jì)電話號(hào)碼管理系統(tǒng)時(shí),遇到了很多的困難,剛拿到課程設(shè)計(jì)的題目的時(shí)候根本不知道如何開(kāi)始去做,第一
11、次上機(jī)就開(kāi)著電腦在那胡亂寫(xiě),最后真是亂七八糟。再課后在仔細(xì)分析了電話號(hào)碼管理系統(tǒng)的功能需求后,整理出所需要編寫(xiě)的功能函數(shù),在旁邊寫(xiě)出他需要哪些語(yǔ)句,畫(huà)出流程圖,上機(jī)后,一個(gè)一個(gè)的編寫(xiě)出來(lái)。當(dāng)然也遇到了許多功能不知道如何實(shí)現(xiàn),在C+的程序設(shè)計(jì)中并沒(méi)有學(xué)到,于是又上網(wǎng)查找,到圖書(shū)館尋找資料。很大程度上擴(kuò)充的自己的知識(shí)儲(chǔ)備。有意思的是當(dāng)編寫(xiě)一個(gè)函數(shù)單獨(dú)使用能正確運(yùn)行,但是放在一起就會(huì)出現(xiàn)很多的錯(cuò)誤,想把程序修飾的更好些,改一改就會(huì)出現(xiàn)一大堆錯(cuò)誤,很多錯(cuò)誤都不懂什么意思,也不知道如何改正,只有一個(gè)個(gè)上網(wǎng)搜索,每次也都會(huì)有一些意向不到的收獲。 本次電話號(hào)碼管理系統(tǒng)的設(shè)計(jì),主要是運(yùn)用面向?qū)ο蟮某?/p>
12、序設(shè)計(jì),定義了一個(gè)Person類(lèi)和一個(gè)TEL類(lèi),Person類(lèi)中為學(xué)生的基本信息,類(lèi)中包含數(shù)個(gè)數(shù)據(jù)成員和數(shù)個(gè)成員函數(shù)。一開(kāi)始只寫(xiě)了題目中要實(shí)現(xiàn)的功能函數(shù),但在編寫(xiě)程序的過(guò)程中發(fā)現(xiàn)有很多隱含的功能也要實(shí)現(xiàn),像sava()、print( )等。這些都是在編寫(xiě)程序的過(guò)程中不斷添加。在成員函數(shù)中有時(shí)會(huì)出現(xiàn)無(wú)法使用類(lèi)中的私有成員的情況,后來(lái)才發(fā)現(xiàn)沒(méi)有加作用域限定符。 在定義學(xué)生的基本信息的過(guò)程中有的用int型,有的用char 型,后來(lái)在輸入運(yùn)行的過(guò)程中出現(xiàn)了很多錯(cuò)誤,干脆都定義成string型。在功能函數(shù)的編寫(xiě)中大同小異,“添加”,“修改”,“刪除”和“查找”的功能函數(shù)幾乎
13、都用到了字符串比較函數(shù),在字符串比較的時(shí)候,語(yǔ)句書(shū)寫(xiě)的不規(guī)范,使“比較”不成功,仔細(xì)研究書(shū)本,才知道正確的語(yǔ)句如何書(shū)寫(xiě)。 那么多天下來(lái),終于將程序完成了,書(shū)寫(xiě)實(shí)驗(yàn)報(bào)告也廢了一番苦心,這次的課程設(shè)計(jì)可以說(shuō)讓我的的水平有了一個(gè)質(zhì)的提高,擴(kuò)充了知識(shí)儲(chǔ)備的同時(shí),鍛煉了自己的抗打擊,抗壓能力,使自己更有耐心。也使自己逐步走向一個(gè)合格的程序員。五、 參考文獻(xiàn)【1】、譚浩強(qiáng),C+語(yǔ)言程序設(shè)計(jì),北京清華大學(xué)出版社,2008年3月【2】、H.M.Deitel、P.J.Deitel等編著,張引等譯,C+大學(xué)基礎(chǔ)教程(第五版),電子工業(yè)出版社【3】、郭有強(qiáng),Visual C+面向?qū)?/p>
14、象程序設(shè)計(jì),北京師范大學(xué)出版社,2015年8月【4】、Y.Daniel Liang編著,王剛等譯,C+程序設(shè)計(jì),機(jī)械工業(yè)出版社,2008年7月【5】、Bjarne Stroustrup編著,王剛等譯,C+程序設(shè)計(jì)原理與實(shí)踐,機(jī)械工業(yè)出版社,2010年6月【6】、Stephen Prata編著,C+ Primer Plus,人民郵電出版社,2012年6月附錄代碼/添加void Person:Append(string n,string pn,string e) cout << "請(qǐng)輸入聯(lián)系人姓名:"cin >> YH;cout <
15、< "請(qǐng)輸入聯(lián)系人電話號(hào)碼:"cin >>YHtop.phonenumber;cout << "請(qǐng)輸入聯(lián)系人的電子郵箱:"cin >> YHtop.email;cout << "n"top+;/打印void Person:Print() for (int i = 0; i < top; i+) cout << "姓 名: "<<YH << "t電 話 號(hào) 碼: "<<YHi.p
16、honenumber<<"t電 子 郵 箱: "<<YHi.email<<endl;cout << "n"/文件保存void Person:Save() ofstream outfile;outfile.open("Message.txt");if (!outfile)cout << "打開(kāi)文件失敗!"for (int i=0; i < top; i+) outfile << YH << "t"
17、<<YHi.phonenumber <<"t"<< YHi.email<<"t" ;outfile << top;outfile.close();/文件讀取void Person:Load() ifstream infile;infile.open("Message.txt");if (!infile) cout << "打不開(kāi)輸入文件!"return;infile >> top;for (int i = 0; i < top
18、; i+) infile >> YH >> YHi.phonenumber >> YHi.email;infile.close();/查詢(xún)聯(lián)系人void Person:Search() string n;if (top = 0) cout << "電話簿為空!" << endl;return;cout << "1.按姓名查詢(xún)" <<"t"<< "2.按電話號(hào)碼查詢(xún)" <<endl;cout <
19、;< "請(qǐng)選擇:"int flag, a = 1, i;cin >> flag;switch (flag) case 1:cout << "輸入姓名:"cin >> n;for (i = 0; i<top; i+) if (YH = n) a = 0;cout << "姓 名: " << YH << "t電 話 號(hào) 碼: " << YHi.phonenumber << "t電
20、 子 郵 箱: " << YHi.email << "n"<<endl;if (a)cout << "查詢(xún)的信息不存在!" << endl;break;case 2:cout << "輸入電話號(hào)碼:"cin >> n;for (i = 0; i<top; i+) if (YHi.phonenumber = n) a = 0;cout << "姓 名: " << YH <<
21、; "t電 話 號(hào) 碼: " << YHi.phonenumber << "t電 子 郵 箱: " << YHi.email <<"n"<< endl;if (a)cout << "查詢(xún)的信息不存在!" << endl;cout << "n"break;default:break;/刪除聯(lián)系人void Person:Delete() string n;if (top = 0) cout <<
22、; "n電話簿為空!n" << endl;return;cout << "1.按姓名查詢(xún)刪除" << "t" << "2.按電話號(hào)碼查詢(xún)" << endl;cout << "請(qǐng)選擇:"int flag, a = 1, i, j;cin >> flag;switch (flag) case 1:cout << "輸入姓名:"cin >> n;for (i = 0; i&l
23、t;top; i+) if (YH= n) a = 0;for (j = i; j<top- 1; j+) YHj = YHj + 1;top-;cout << "n"if (a)cout << "查詢(xún)的信息不存在!" << endl;cout << "n"break;case 2:cout << "輸入電話號(hào)碼:"cin >> n;for (i = 0; i<top; i+) if (YHi.phonenumber =
24、 n) a = 0;for (j = i; j<top - 1; j+) YHj = YHj + 1;top-;cout << "n"if (a)cout << "查詢(xún)的信息不存在!" << endl;cout << "n"break;default:break;/修改聯(lián)系人void Person:Modify() string n, na, pn, e;if (top = 0) cout << "n電話簿為空!n" << endl;return;cout << "1.按姓名查詢(xún)修改" << "t"<< "2.按電話號(hào)碼查詢(xún)修改" << endl;cout << "請(qǐng)選擇:"int flag, a = 1, i
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 新疆政法學(xué)院《新聞算法與編程》2023-2024學(xué)年第二學(xué)期期末試卷
- 天津渤海職業(yè)技術(shù)學(xué)院《衛(wèi)星通信系統(tǒng)》2023-2024學(xué)年第二學(xué)期期末試卷
- 四川國(guó)際標(biāo)榜職業(yè)學(xué)院《建筑工程造價(jià)管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 內(nèi)蒙古大學(xué)《新能源汽車(chē)概論》2023-2024學(xué)年第二學(xué)期期末試卷
- 2024屆河北省石家莊二中實(shí)驗(yàn)學(xué)校高三下學(xué)期仿真模擬歷史試卷
- 2024-2025學(xué)年山東省聊城市第二中學(xué)高一上學(xué)期12月月考?xì)v史試卷
- 新疆醫(yī)科大學(xué)《高層建筑智慧施工》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣州科技貿(mào)易職業(yè)學(xué)院《建筑CAD》2023-2024學(xué)年第二學(xué)期期末試卷
- 嶺南師范學(xué)院《高電壓技術(shù)實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 湖南外貿(mào)職業(yè)學(xué)院《無(wú)機(jī)及分析化學(xué)(Ⅱ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 作品集合同范本
- 保安員綜合理論考試題庫(kù)備考500題(含各題型)
- 2025勞動(dòng)合同法重點(diǎn)法條導(dǎo)讀附案例詳解
- 2025年內(nèi)蒙古自治區(qū)政府工作報(bào)告測(cè)試題及參考答案
- 2024年全國(guó)中學(xué)生生物學(xué)聯(lián)賽試題及答案詳解
- 2025年1月浙江省高考英語(yǔ)試卷真題(含答案)
- 2025年度花卉產(chǎn)業(yè)大數(shù)據(jù)服務(wù)平臺(tái)建設(shè)合同2篇
- 2025年度花卉產(chǎn)業(yè)大數(shù)據(jù)平臺(tái)建設(shè)合同3篇
- 小學(xué)班會(huì)-交通安全伴我行(共25張課件)
- 建筑施工現(xiàn)場(chǎng)安全警示(案例)
- 《生產(chǎn)與運(yùn)作管理 第4版》課件 第1、2章 概論、需求預(yù)測(cè)與管理
評(píng)論
0/150
提交評(píng)論