C語言綜合實訓(xùn)設(shè)計報告_第1頁
C語言綜合實訓(xùn)設(shè)計報告_第2頁
C語言綜合實訓(xùn)設(shè)計報告_第3頁
C語言綜合實訓(xùn)設(shè)計報告_第4頁
C語言綜合實訓(xùn)設(shè)計報告_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

C語言綜合實訓(xùn)設(shè)計報告實訓(xùn)目的說明一.設(shè)計報告的基本內(nèi)容至少包括封面、正文、參考文獻(xiàn)三部分。1.封面封面按照模版填寫,不得隨意更改。2.正文正文是設(shè)計報告的主體,具體由以下幾部分組成:(1)問題描述描述要求編程解決的問題。(2)基本要求給出程序要達(dá)到的具體的要求。(3)需求分析以無歧義的陳述說明程序設(shè)計的任務(wù),強調(diào)的是程序要做什么?并明確規(guī)定:輸入的形式和輸入值的范圍;輸出的形式;程序所能達(dá)到的功能;測試數(shù)據(jù):包括正確的輸入及其輸出結(jié)果和含有錯誤的輸入及其輸出結(jié)果。(4)概要設(shè)計說明本程序中主程序的流程以及各程序模塊之間的層次(調(diào)用)關(guān)系。(5)詳細(xì)設(shè)計實現(xiàn)概要設(shè)計中定義的所有數(shù)據(jù)類型,給出關(guān)鍵部分源程序的清單,要求程序有充分的注釋語句,至少要注釋每個函數(shù)參數(shù)的含義和函數(shù)返回值的含義。(6)調(diào)試分析內(nèi)容包括:調(diào)試過程中遇到的問題是如何解決的以及對設(shè)計與實現(xiàn)的回顧討論和分析;(7)用戶使用說明說明如何使用你編寫的程序,詳細(xì)列出每一步的操作步驟。(8)測試結(jié)果設(shè)計測試數(shù)據(jù),或具體給出測試數(shù)據(jù)。要求測試數(shù)據(jù)完整和嚴(yán)格,能全面地測試所設(shè)計程序的功能。(9)程序設(shè)計總結(jié)(10)參考文獻(xiàn)列出參考的相關(guān)資料和書籍。二.格式要求中文:宋體五號英文:TimeNewRoman五號行距:單倍行距標(biāo)題: 每一個標(biāo)題都要加粗問題描述本系統(tǒng)查詢數(shù)據(jù)庫中的個人履歷信息。用戶使用說明在運行系統(tǒng)后根據(jù)系統(tǒng)要進行操作。如要進行查詢功能,則輸入該功能前的序號后按ENTER后根據(jù)提示輸入要查詢的個人的姓名后按ENTER即可得到所需信息。二

、功能分析設(shè)計一個人履歷管理系統(tǒng)系統(tǒng),實現(xiàn)以下功能:系統(tǒng)以菜單方式工作,個人履歷信息錄入功能(個人文件保存);個人履歷信息包括:人名、性別、年齡、學(xué)校、電話號等;個人履歷信息瀏覽功能(輸出所有個人履歷信息);查詢功能;個人履歷信息的刪除與修改。三、程序設(shè)計(1)用文本編輯器編寫一個name.txt的文件,文件中應(yīng)包含20條以上記錄,包含數(shù)據(jù)信息即個人履歷信息。在運行程序時自動載入,若文件不存則創(chuàng)建一個空文件。(2)用文本編輯器編寫一個school.txt的文件,文件中應(yīng)包含20條以上記錄,包含數(shù)據(jù)信息即個人履歷信息。在運行程序時自動載入,若文件不存則創(chuàng)建一個空文件。(3)用文本編輯器編寫一個year.txt的文件,文件中應(yīng)包含20條以上記錄,包含數(shù)據(jù)信息即個人履歷信息。在運行程序時自動載入,若文件不存則創(chuàng)建一個空文件。(4)用文本編輯器編寫一個sex.txt的文件,文件中應(yīng)包含20條以上記錄,包含數(shù)據(jù)信息即個人履歷信息。在運行程序時自動載入,若文件不存則創(chuàng)建一個空文件。(5)用文本編輯器編寫一個number.txt的文件,文件中應(yīng)包含20條以上記錄,包含數(shù)據(jù)信息即個人履歷信息。man類中含有個人的姓名及性別數(shù)據(jù),其余數(shù)據(jù)由主函數(shù)從TxT文件中獲得,再需要查詢或修改個人的信息時,個人的信息會錄入相應(yīng)的數(shù)組,查詢時則有序的顯示需要的信息,修改時則直接修改數(shù)組中的數(shù)據(jù)在程序結(jié)束時存入并覆蓋相應(yīng)TXT文件中的數(shù)據(jù)實現(xiàn)數(shù)據(jù)存儲。個人的姓名與性別儲存在man類中的string數(shù)組中,個人的年齡,手機號.儲存在對應(yīng)的的TXT文件中,在程序開始后,讀取數(shù)據(jù)到long類型的和int類型數(shù)組中,在查詢個人信息時由對應(yīng)模塊按照輸入的姓名來查找對應(yīng)的數(shù)組序號再按此序號輸出各類數(shù)據(jù)數(shù)組中儲存的信息。在修改個人信息時,修改相應(yīng)數(shù)組位置的信息,然后再程序結(jié)束時覆蓋原TXT文件中完成數(shù)據(jù)的儲存并將數(shù)組中的數(shù)據(jù)保存。四、程序代碼#include<iostream>#include<fstream>#include<string>usingnamespacestd;classman{public:stringName[5];//創(chuàng)建一個字符為5的名為Name的字符串stringSex[5];//創(chuàng)建一個字符為5的名為Sex的字符串stringSchool[5];//創(chuàng)建一個字符為5的名為School的字符串longNumber[5];//創(chuàng)建一個字符為5的名為Number的字符串intYear[5];//創(chuàng)建一個字符為5的名為Year的字符串};intmain(){ manA; ifstreamfin("Name.txt");//在運行程序時自動載入Name.txtfor(inti=0;i<5;i++){ fin>>A.Name[i];} ifstreamx("Sex.txt");//在運行程序時自動載入Sex.txtfor(inti=0;i<5;i++){ x>>A.Sex[i];} ifstreama("School.txt");//在運行程序時自動載入School.txtfor(inti=0;i<5;i++){ a>>A.School[i];} ifstreamc("Number.txt");//在運行程序時自動載入Number.txtfor(inti=0;i<5;i++){ c>>A.Number[i];} ifstreaml("Year.txt");//在運行程序時自動載入Year.txtfor(inti=0;i<5;i++){ l>>A.Year[i];} while(1){ cout<<"*************歡迎使用C語言個人履歷管理系統(tǒng)****************"<<endl; cout<<"****************請輸入要使用功能的序號********************"<<endl; cout<<"******************1.錄入個人信息**************************"<<endl; cout<<"******************2.查詢個人信息**************************"<<endl; cout<<"******************3.修改個人信息**************************"<<endl; cout<<"******************4.保存并退出****************************"<<endl; cout<<"請輸入要使用的功能序號:"; intn; cin>>n; switch(n){ case1: { stringname; stringsex; stringschool; longnumber; intyear; cout<<"請輸入姓名:"; cin>>name; cout<<"請輸入性別:"; cin>>sex; cout<<"請輸入學(xué)校:"; cin>>school; cout<<"請輸入手機號碼:"; cin>>number; cout<<"請輸入年齡:"; cin>>year; for(inti=0;i<5;i++){ if(A.Year[i]==0){ A.Name[i]=name; A.Sex[i]=sex; A.School[i]=school; A.Number[i]=number; A.Year[i]=year; A.Year[i+1]=0; break; } } break;//年齡 } case2: { cout<<"請輸入要查詢的個人的姓名:"; stringM; intt; cin>>M; for(inti=0;i<5;i++)//確定該姓名所在的數(shù)組元素的序號輸入姓名 { if(A.Name[i]==M) { t=i; break; } } cout<<"姓名性別年齡手機號碼畢業(yè)大學(xué)"<<endl;//確定其他元素的位置根據(jù)所得的序號來 cout<<A.Name[t]<<""<<A.Sex[t]<<""<<A.Year[t]<<""<<A.Number[t]<<""<<A.School[t]<<endl; break; } case3: { cout<<"請輸入要修改的個人的姓名:";//獲得要修改的所有數(shù)組元素的序號根據(jù)姓名 stringW; intp; cin>>W; for(inti=0;i<5;i++) { if(A.Name[i]==W) { p=i; } } intk; cout<<"**********1.修改姓名***********"<<endl; cout<<"**********2.修改性別***********"<<endl; cout<<"**********3.修改年齡***********"<<endl; cout<<"**********4.修改號碼***********"<<endl; cout<<"**********5.修改大學(xué)***********"<<endl; cout<<"請輸入要進行的操作前的序號:"; cin>>k; switch(k) { case1: { cout<<"請輸入修改后的姓名:"; stringN; cin>>N; A.Name[p]=N; break;//修改姓名成新的姓名 } case2: { cout<<"請輸入修改后的性別:"; stringS; cin>>S; A.Sex[p]=S; break;//修改姓別成新的姓別 } case3: { cout<<"請輸入修改后的年齡:"; intY; cin>>Y; A.Year[p]=Y; break;//修改年齡成新的年齡 } case4: { cout<<"請輸入修改后的號碼:"; charNb; cin>>Nb; A.Number[p]=Nb; break;//修改號碼成新的號碼 } case5: { cout<<"請輸入修改后的大學(xué):"; stringSc; cin>>Sc; A.School[p]=Sc; break;//修改大學(xué)成新的大學(xué) } } break; } case4: { ofstreammycout("Name.txt"); for(inti=0;i<5;i++){ mycout<<A.Name[i]<<"";}mycout.close();ofstreamqycout("Sex.txt"); for(inti=0;i<5;i++){ qycout<<A.Sex[i]<<"";}qycout.close(); ofstreamwycout("Number.txt"); for(inti=0;i<5;i++){ wycout<<A.Number[i]<<"";}wycout.close();ofstreamrycout("Year.txt"); for(inti=0;i<5;i++){ rycout<<A.Year[i]<<"";}rycout.close();ofstreamiycout("School.txt"); for(inti=0;i<5;i++){ iycout<<A.School[i]<<"";}iycout.close();exit(0);break; } } }}錄入個人信息錄入了1,小琴,女,西安財經(jīng)大學(xué),156,20查詢個人信息小剛輸出:小剛男341336西安財經(jīng)大學(xué)修改個人信息將小剛年齡修改為66開始菜單實行步驟開始菜單本系統(tǒng)通過在while循環(huán)中套用switch函數(shù)來實現(xiàn)系統(tǒng)功能的循環(huán)與選自,如程序正常運行會出現(xiàn)以下主菜單:cout<<"***歡迎使用C語言個人履歷管理系統(tǒng)****"<<endl; cout<<"******請輸入要使用功能的序號*********"<<endl; cout<<"**********1.錄入個人信息**************"<<endl; cout<<"**********2.查詢個人信息**************"<<endl; cout<<"**********3.修改個人信息**************"<<endl; cout<<"**********4.保存并退出****************"<<endl; cout<<"請輸入要使用的功能序號:";通過輸入一個數(shù)字,讓系統(tǒng)將其獲取,并進入switch循環(huán)中,以此來進行功能的選則。錄入功能當(dāng)系統(tǒng)執(zhí)行錄入時,會生成5個變量,分別為三個string變量name,sex,School,和long變量number一個int變量year,而后用戶根據(jù)系統(tǒng)的提示將一個人的信息輸入進去。當(dāng)用戶看到“請輸入姓名:”后輸入新的姓名,系統(tǒng)會執(zhí)行cin>>name;語句,將輸入的姓名保存到name中,以此模式輸入所有信息后:for(inti=0;i<5;i++){ if(A.Year[i]==0){ A.Name[i]=name; A.Sex[i]=sex; A.School[i]=school; A.Number[i]=number; A.Year[i]=year; A.Year[i+1]=0;break; } }由for循環(huán)與if來確定Year數(shù)組中從哪一位開始為零,獲得這一位的下標(biāo),下表來將輸入的信息存入到各個數(shù)組的空位中,最后一句用A.Year[i+1]=0;來將此數(shù)組的下一位的值賦0,確保下一次執(zhí)行時沒有亂碼的干擾導(dǎo)致系統(tǒng)運行出錯。查詢功能系統(tǒng)執(zhí)行查詢功能時,用戶看到“請輸入要查詢的個人的姓名:”的提示后輸入要查詢的人的姓名,系統(tǒng)會執(zhí)行該語句:

stringM;cin>>M;將輸入的姓名保存進string型的M變量中,之后執(zhí)行intt;for(inti=0;i<5;i++){ if(A.Name[i]==M) { t=i; break; } }創(chuàng)建int型的t變量,通過for循環(huán)與if來找出與輸入姓名相同的Name數(shù)組中的元素的下標(biāo),并將此下標(biāo)賦予t,之后執(zhí)行:

cout<<A.Name[t]<<""<<A.Sex[t]<<"<<A.Year[t]<<""<<A.Number[t]<<""<<A.School[t]<<endl;用與相應(yīng)Name數(shù)組元素下標(biāo)相同的數(shù)字表示其他數(shù)組的下標(biāo),從而打印出想要查詢的個人的所有信息。修改功能系統(tǒng)執(zhí)行這項功能時,輸入需要修改的個人的姓名,系統(tǒng)執(zhí)行將輸入的姓名保存到string型的變量W中,之后執(zhí)行創(chuàng)建int型的p變量,通過for循環(huán)if來找出與輸入姓名相同的Name數(shù)組中的元素的下標(biāo),將此下標(biāo)賦予pstringW;cin>>W;intp;for(inti=0;i<5;i++) { if(A.Name[i]==W) { p=i; } }cout<<"**********1.修改姓名***********"<<endl; cout<<"**********2.修改性別***********"<<endl; cout<<"**********3.修改年齡***********"<<endl; cout<<"**********4.修改號碼***********"<<endl; cout<<"**********5.修改大學(xué)***********"<<endl; cout<<"請輸入要進行的操作前的序號:";

在用戶根據(jù)系統(tǒng)提示選擇要進行操作,此處使用了一個switch循環(huán),例如選則1號的話就執(zhí)行修改姓名的操作,再輸入了1后會看到系統(tǒng)提示:“請輸入修改后的姓名:”在輸入了修改后的姓名后,系統(tǒng)會執(zhí)行以下語句:stringN; cin>>N; A.Name[p]=N;創(chuàng)建string型的N變量來接收出入的新的姓名,根據(jù)之前確定的數(shù)組元素位置來用新的元素覆蓋原本的位置所在的元素完成數(shù)據(jù)的修改,其他修改選項與之類似。保存功能自動執(zhí)行ofstreammycout("Name.txt"); for(inti=0;i<5;i++){ mycout<<A.Name[i]<<"";}mycout.close();ofstreamqycout("Sex.txt"); for(inti=0;i<5;i++){ qycout<<A.Sex[i]<<"";}qycout.close(); ofstreamwycout("Number.txt"); for(inti=0;i<5;i++){ wycout<<A.Number[i]<<"";}wycout.close();ofstreamrycout("Year.txt"); for(inti=0;i<5;i++){ rycout<<A.Year[i]<<"";}rycout.close();ofstreamiycout("School.txt"); for(inti=0;i<5;i++){ iycout<<A.School[i]<<"";}iycout.close();exit(0);ofstreamiycout("School.txt"); for(inti=0;i<5;i++){ iycout<<A.School[i]<<"";}iycout.close();模塊對應(yīng)的數(shù)組保存到對應(yīng)的TXT文件中并覆蓋原本的數(shù)據(jù),來完成對數(shù)據(jù)的保存。六、調(diào)試與測試隨著科學(xué)技術(shù)的迅猛發(fā)展和社會各方面的需要,人事管理工作已經(jīng)處在越來越突出的位置了,所以建立一個完善的健全的人事管理系統(tǒng)是非常必要的。人事管理就是通常所說的人事工作,在現(xiàn)代管理學(xué)中被稱作人力資源管理。在現(xiàn)代管理中,運用現(xiàn)代化的科學(xué)方法,對管理系統(tǒng)中的人事進行合理的組織、調(diào)配、培訓(xùn),協(xié)調(diào)人的因素與物的因素的關(guān)系,使兩者經(jīng)常保持最佳比例,從而保證人主觀能動性得到最大的發(fā)揮,也就是人盡其才、事得其人、人事相宜的管理狀態(tài)。人事管理的任務(wù)是要協(xié)調(diào)人與人的關(guān)系、組織成員與組織目標(biāo)的關(guān)系,創(chuàng)造有益于組織也有益于組織成員個人的環(huán)境,使管理系統(tǒng)的目標(biāo)與組織成員個人的目標(biāo)結(jié)合起來,充分調(diào)動起全體組織成員的積極性。在一些發(fā)達(dá)國家已經(jīng)形成相當(dāng)?shù)囊?guī)模和體系,在我國也得到社會的普遍認(rèn)可,許多大型企業(yè)和中小型企業(yè)已采用這種方式來進行管理。它的出現(xiàn),對現(xiàn)有的企業(yè)管理是一次強有力的沖擊,而且對人們舊有的管理觀念產(chǎn)生了深刻的影響?;谏鲜龅挠绊懀鶕?jù)企業(yè)的實際需要我們對該系統(tǒng)進行全面的設(shè)計!正是實訓(xùn)短學(xué)期給了我這樣的機會,在現(xiàn)在這個普遍浮躁的社會我能為自己能獲得到這個幾個星期靜下心來學(xué)習(xí)的機會而感到榮幸,雖然在正式學(xué)期的時候也學(xué)到了很多知識但是正是因為有了實訓(xùn)短學(xué)期這樣的機會能讓我自習(xí)思考這其中的原因,代碼的原理。從大學(xué)剛?cè)雽W(xué)開始我就一直期待這次實訓(xùn)短學(xué)期對我能力的提升,而老師充滿趣味的講課方式也讓我更好的吸收了知識?,F(xiàn)在當(dāng)程序員的門檻很低了,普遍是在外面報個班就能打基礎(chǔ)的碼農(nóng),而我們在校大學(xué)生和他們不同的就是我們會獨立思考而不是一味地只是個打代碼的機器。我們學(xué)習(xí)了高等數(shù)學(xué),學(xué)習(xí)了離散數(shù)學(xué),學(xué)習(xí)了線性代數(shù),這些課程都能打開我們的思維,從更多方面的優(yōu)化代碼,使得我們的代碼獲得與別人完全不同的效果。而實訓(xùn)短學(xué)期給我的正是這樣的幫助,帶我們學(xué)習(xí)除了上課教學(xué)的c語言,c++語言之外的更多語言,擴寬我們的思路,實現(xiàn)用不同的代碼實現(xiàn)功能,取其所長,挑選最優(yōu)的語言,最優(yōu)的代碼。我個人從小就對計算機感興趣而代碼證是計算機的生命,是代碼讓計算機“活”了起來。所以大學(xué)我選上了軟件工程這個專業(yè)是異常興奮的。我希望有一天我能寫出我自己的軟件,能讓更多人體驗到我的軟件,哪怕為他們的生活添減一點點便利。曾經(jīng)有人說過這樣一句話“最棒的科技就是讓人們感受不到科技的存在”。如果不是特別指出誰又能知道空氣的存在呢,我希望有一天網(wǎng)絡(luò)就像空氣一樣能讓讓人感覺不到。大學(xué)就是一個小社會,我們都在為了進入最后的準(zhǔn)備,而大學(xué)教我們的就是這樣的知識,在參觀了真正的軟件園之后我更加堅定了我寫程序的夢想。于是在實訓(xùn)短學(xué)期的后半程我和另外兩個小伙伴便編寫了這個程序,我們借鑒了我們本學(xué)期程序設(shè)計期末作業(yè)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論