版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> C++語言課程設(shè)計(jì)說明書</p><p> 一、課程設(shè)計(jì)的目的和要求</p><p> 1.進(jìn)一步鞏固C++語言語法規(guī)則。</p><p> 2.熟練掌握程序設(shè)計(jì)的一般技巧和方法。</p><p> 3.培養(yǎng)解決綜合性實(shí)際問題的能力。</p><p><b> 二、課程設(shè)計(jì)任務(wù)
2、</b></p><p><b> 三、課程設(shè)計(jì)要求:</b></p><p> 1.分析課程設(shè)計(jì)題目的要求 </p><p> 2.寫出詳細(xì)設(shè)計(jì)說明</p><p> 3.編寫程序代碼,調(diào)試程序使其能正確運(yùn)行 </p><p> 4.設(shè)計(jì)完成的軟件要便于操作和使用 <
3、/p><p> 5.設(shè)計(jì)完成后提交內(nèi)容有: 源程序(cpp和h頭文件),word 版程序說明( ①系統(tǒng)說明 ②實(shí)驗(yàn)分析與結(jié)論 ③體會(huì))</p><p><b> 四、時(shí)間安排:2周</b></p><p> 題目 職工信息管理 </p><p><b> 題目介紹</b></p>
4、<p> ?。╊}目:職工信息管理;</p><p> )數(shù)據(jù)描述:定義職工(employee )類,其中至少包括姓名、 性別、工號(hào)、電話、所在科室和工資。</p><p> (3.)功能需求:1.輸入功能:輸入職工信息,并保存到文件中; </p><p> 2.查詢功能: 1)能夠根據(jù)工號(hào)精確查詢職工信息; 2)能夠根據(jù)姓名、科室查詢職工信息
5、;3)分科室進(jìn)行工資統(tǒng)計(jì),計(jì)算各科室的平均工資 ;3.根據(jù)職工的工資排序輸出;</p><p> 4.根據(jù)工號(hào)修改職工信息 ;5.根據(jù)工號(hào)刪除職工信息;</p><p><b> (4.)用戶界面:</b></p><p> 輸入:程序正常運(yùn)行后,屏幕上顯示一個(gè)文字菜單(根據(jù)序號(hào)選定相應(yīng)的操作項(xiàng)目)當(dāng)用戶選定操作項(xiàng)目所對(duì)應(yīng)的序號(hào)時(shí),根據(jù)應(yīng)
6、用程序的提示信息,從鍵盤上輸入相應(yīng)的數(shù)據(jù)。</p><p> 輸出:1. 應(yīng)用程序正常運(yùn)行后,要在屏幕上顯示一個(gè)文字菜單;</p><p> 2.要求用戶輸入數(shù)據(jù)時(shí),要給出清晰、明確的提示信息,包括輸入的數(shù)據(jù)內(nèi)容,格式及結(jié)束方式等。</p><p><b> 系統(tǒng)分析</b></p><p> 根據(jù)題目要求,我知
7、道整個(gè)程序是以類定義的,首先定義一個(gè)employee類,再在類中定義一些數(shù)據(jù)成員和函數(shù)成員,在類中首先定義一個(gè)結(jié)構(gòu)體,結(jié)構(gòu)體中包括姓名、 性別、工號(hào)、電話、所在科室和工資。然后分別定義一個(gè)具有輸入功能、菜單選擇功能、查詢功能、排序功能、刪除功能、修改功能的函數(shù)。在主函數(shù)中應(yīng)用輸入功能函數(shù),通過輸入功能函數(shù)進(jìn)入菜單選擇函數(shù),利用switch語句選擇要進(jìn)行的項(xiàng)目,分別進(jìn)入各種函數(shù)中進(jìn)行操作,然后實(shí)現(xiàn)employee的各種功能。其中對(duì)一些錯(cuò)誤
8、輸入進(jìn)行處理,以完善程序。</p><p><b> 程序代碼</b></p><p> #include<iostream.h></p><p> #include"stdlib.h"</p><p> #include"string.h"</p>
9、<p> #define N 3</p><p> class employee</p><p><b> {public:</b></p><p> struct employ</p><p><b> {</b></p><p> char n
10、ame[10];</p><p><b> char sex;</b></p><p> int serial;</p><p><b> int tele;</b></p><p> int branchnum;</p><p> float salary;}nu
11、m;</p><p> void input();</p><p> void menu_select();</p><p> void search();</p><p> void find();</p><p> void average();</p><p> void li
12、st();</p><p> void change();</p><p> void cancel();</p><p> }stu[30],write;</p><p> void input();</p><p> void menu_select();</p><p> vo
13、id search();</p><p> void find();</p><p> void average();</p><p> void list();</p><p> void change();</p><p> void cancel();</p><p> voi
14、d main()</p><p> {write.input();}</p><p> void employee::input()</p><p><b> {</b></p><p><b> int i;</b></p><p> cout<<&q
15、uot;請(qǐng)輸入姓名.性別(男(b))/(女(g)).工號(hào).電話位數(shù)(12以內(nèi)).所在科室.工資:";</p><p> for(i=0;i<N;i++)</p><p> {cout<<"請(qǐng)輸入姓名:";</p><p> cin>>stu[i].num.name;</p><p&
16、gt; cout<<"請(qǐng)輸入性別:";</p><p> cin>>stu[i].num.sex;</p><p> cout<<"請(qǐng)輸入工號(hào):";</p><p> cin>>stu[i].num.serial;</p><p> cout&l
17、t;<"請(qǐng)輸入電話號(hào)碼:";</p><p> cin>>stu[i].num.tele;</p><p> cout<<"所在科室:";</p><p> cin>>stu[i].num.branchnum;</p><p> cout<<
18、"請(qǐng)輸入工資:";</p><p> cin>>stu[i].num.salary;</p><p> cout<<endl;}</p><p> write.menu_select();</p><p><b> }</b></p><p>
19、 void employee::menu_select()</p><p><b> {</b></p><p><b> int m;</b></p><p> cout<<"請(qǐng)選擇進(jìn)行的項(xiàng)目"<<endl;</p><p> cout<&
20、lt;"根據(jù)工號(hào)查詢信息"<<endl;</p><p> cout<<"根據(jù)姓名查詢信息"<<endl;</p><p> cout<<"工資排序輸出"<<endl;</p><p> cout<<"根據(jù)工號(hào)修改職工信
21、息"<<endl;</p><p> cout<<"根據(jù)工號(hào)刪除職工信息"<<endl;</p><p> cout<<"請(qǐng)選擇進(jìn)行的項(xiàng):";</p><p><b> cin>>m;</b></p><p&g
22、t;<b> switch(m)</b></p><p> {case 1: write.search();break;</p><p> case 2: write.find();break;</p><p> case 3: write.average();break;</p><p> case 4: w
23、rite.list();break;</p><p> case 5: write.change();break;</p><p> case 6: write.cancel();break;</p><p> default: {cout<<"輸入有誤!"<<endl;menu_select();}</p&g
24、t;<p><b> }</b></p><p><b> }</b></p><p> void employee::search()</p><p><b> {</b></p><p> int i,count=0;</p><
25、p><b> int s;</b></p><p><b> char c;</b></p><p> cout<<"請(qǐng)輸入查找人的工號(hào):";</p><p><b> cin>>s;</b></p><p> {fo
26、r(i=0;i<N;i++)</p><p><b> {</b></p><p> if(stu[i].num.serial==s)</p><p> {{cout<<s;</p><p> cout<<"的信息為:"<<endl;</p>
27、;<p> cout<<"************"<<endl;</p><p> cout<<"**姓名:";</p><p> cout<<stu[i].num.name<<endl;</p><p> cout<<"
28、**性別:";</p><p> cout<<stu[i].num.sex<<endl;</p><p> cout<<"**工號(hào):";</p><p> cout<<stu[i].num.serial;</p><p> cout<<"
29、;**電話:";</p><p> cout<<stu[i].num.tele<<endl;</p><p> cout<<"**科室:";</p><p> cout<<stu[i].num.branchnum<<endl;</p><p>
30、cout<<"**工資:";</p><p> cout<<stu[i].num.salary<<endl;</p><p> cout<<"************"<<endl;</p><p><b> }</b></p>
31、<p> cout<<"按y/Y返回主菜單!"<<endl;</p><p><b> cin>>c;</b></p><p> if(c=='y'||c=='Y') menu_select();}</p><p> else coun
32、t++;}</p><p> if(count==N) {cout<<"沒有此人! 請(qǐng)重新輸入!";write.search();}</p><p><b> }</b></p><p><b> }</b></p><p> void employee::f
33、ind()</p><p><b> {</b></p><p> int i,count=0;</p><p> char k[20];</p><p><b> char c;</b></p><p> cout<<"請(qǐng)輸入查找人的姓名:&
34、quot;<<endl;</p><p><b> cin>>k;</b></p><p> {for(i=0;i<N;i++)</p><p><b> {</b></p><p> if(strcmp(stu[i].num.name,k)==0)</p
35、><p> {{cout<<k;</p><p> cout<<"的信息為:"<<endl;</p><p> cout<<"************"<<endl;</p><p> cout<<"**姓名:&quo
36、t;;</p><p> cout<<stu[i].num.name<<endl;</p><p> cout<<"**性別:";</p><p> cout<<stu[i].num.sex<<endl;</p><p> cout<<&quo
37、t;**工號(hào):";</p><p> cout<<stu[i].num.serial;</p><p> cout<<"**電話:";</p><p> cout<<stu[i].num.tele<<endl;</p><p> cout<<&q
38、uot;**科室:";</p><p> cout<<stu[i].num.branchnum<<endl;</p><p> cout<<"**工資:";</p><p> cout<<stu[i].num.salary<<endl;</p><p&
39、gt; cout<<"************"<<endl;</p><p> }cout<<"按y/Y返回主菜單!"<<endl;</p><p><b> cin>>c;</b></p><p> if(c=='y'
40、||c=='Y') menu_select();}</p><p> else count++;}</p><p> if(count==N) {cout<<"沒有此人! 請(qǐng)重新輸入!";write.find();}</p><p><b> }</b></p><p&g
41、t;<b> }</b></p><p> void employee::list()</p><p><b> {</b></p><p><b> int i,j;</b></p><p> float temp;</p><p><
42、b> char c;</b></p><p> {for(i=0;i<N;i++)</p><p> for(j=0;j<N-1;j++)</p><p> if(stu[j].num.salary>stu[j+1].num.salary)</p><p> {temp=stu[j].num.sa
43、lary;stu[j].num.salary=stu[j+1].num.salary;stu[j+1].num.salary=temp;</p><p><b> }</b></p><p> for(i=0;i<N;i++)</p><p> cout<<stu[i].num.salary;</p>&l
44、t;p> cout<<endl;</p><p> cout<<endl;}cout<<"按y/Y返回主菜單!"<<endl;</p><p><b> cin>>c;</b></p><p> if(c=='y'||c=='Y
45、') write.menu_select();</p><p><b> }</b></p><p> void employee::average()</p><p><b> {</b></p><p> int i,count1=0,count2=0;</p>&
46、lt;p> float temp1=0,temp2=0,ave1,ave2;</p><p><b> char c;</b></p><p> for(i=0;i<N;i++)</p><p> switch(stu[i].num.branchnum)</p><p><b> {<
47、;/b></p><p><b> case 1: </b></p><p> temp1+=stu[i].num.salary;count1++;break;</p><p><b> case 2: </b></p><p> temp2+=stu[i].num.salary;co
48、unt2++;break;</p><p><b> }</b></p><p> ave1=temp1/count1;</p><p> ave2=temp2/count2;</p><p> cout<<"1科室的平均工資為:"<<ave1<<endl;
49、</p><p> cout<<"2科室的平均工資為:"<<ave2<<endl;</p><p> cout<<"按y/Y返回主菜單!"<<endl;</p><p><b> cin>>c;</b></p>&
50、lt;p> if(c=='y'||c=='Y') write.menu_select();</p><p><b> }</b></p><p> void employee::change()</p><p><b> {</b></p><p>
51、int i,count=0;</p><p><b> int s;</b></p><p><b> char c;</b></p><p> cout<<"請(qǐng)輸入工號(hào):";</p><p><b> cin>>s;</b>
52、</p><p> cout<<endl;</p><p> {for(i=0;i<N;i++)</p><p><b> {</b></p><p> if(stu[i].num.serial==s)</p><p> {{cout<<"請(qǐng)輸入
53、修改后的姓名.性別(男(b))/(女(g)).工號(hào).電話位數(shù)(12以內(nèi)).所在科室.工資:"<<endl;</p><p> cout<<"**姓名:";</p><p> cin>>stu[i].num.name;</p><p> cout<<"**性別:"&
54、lt;<endl;</p><p> cin>>stu[i].num.sex;</p><p> cout<<"**電話:"<<endl;</p><p> cin>>stu[i].num.tele;</p><p> cout<<"**科
55、室:"<<endl;</p><p> cin>>stu[i].num.branchnum;</p><p> cout<<"**工資:"<<endl;</p><p> cin>>stu[i].num.salary;</p><p> cout
56、<<"************"<<endl;</p><p><b> }</b></p><p> cout<<"按y/Y返回主菜單!"<<endl;</p><p><b> cin>>c;</b></p&
57、gt;<p> if(c=='y'||c=='Y') write.menu_select();}</p><p> else count++;}</p><p> if(count==N) {cout<<"沒有此人! 請(qǐng)重新輸入!";change();}}</p><p><b
58、> }</b></p><p> void employee::cancel()</p><p><b> {</b></p><p> int i,count=0;</p><p><b> int s;</b></p><p><b>
59、; char c;</b></p><p> cout<<"請(qǐng)輸入要?jiǎng)h除的工號(hào):";</p><p><b> cin>>s;</b></p><p> {for(i=0;i<N;i++)</p><p><b> {</b>&
60、lt;/p><p> if(stu[i].num.serial==s)</p><p> {for(;i<N-1;i++)</p><p> {stu[i].num.serial=stu[i+1].num.serial;</p><p> strcpy(stu[i].num.name,stu[i+1].num.name);</
61、p><p> stu[i].num.sex=stu[i+1].num.sex;</p><p> stu[i].num.tele=stu[i+1].num.tele;</p><p> stu[i].num.branchnum=stu[i+1].num.branchnum;</p><p> stu[i].num.salary=stu[i
62、+1].num.salary;}</p><p> cout<<"刪除成功!";</p><p> cout<<"按y/Y返回主菜單!"<<endl;</p><p><b> cin>>c;</b></p><p> if(
63、c=='y'||c=='Y') write.menu_select();}</p><p> else count++;}</p><p> if(count==N) {cout<<"沒有此人! 請(qǐng)重新輸入!";cancel();}}</p><p><b> } </b>&
64、lt;/p><p><b> 運(yùn)行結(jié)果</b></p><p><b> 總結(jié)</b></p><p> 半年的學(xué)習(xí),再加上后兩周的操作,讓我感受頗多,編程序首先是在紙上寫一下代碼,代碼寫好了才到電腦上調(diào)試,這樣可以提高效率,還可以幫組記憶,因?yàn)槭浅鯇W(xué),對(duì)知識(shí)點(diǎn)比較陌生,所以寫一下會(huì)有所記憶的,C++中也有東西需要理解才
65、能編好的,因此,不僅是簡(jiǎn)簡(jiǎn)單單仿寫,沒有了模板,就沒有了思路。</p><p> 我感覺設(shè)計(jì)C++在編譯程序時(shí)碰到錯(cuò)誤是正常的,不要慌,即使剛開始時(shí)系統(tǒng)報(bào)了幾十個(gè)錯(cuò)誤也不要擔(dān)心,我認(rèn)為這恰是一個(gè)機(jī)會(huì),因?yàn)樵谥鸩降母腻e(cuò)中恰能明白自己的錯(cuò)誤所在,就能更深刻的理解C++,錯(cuò)誤是伴隨C++的成長(zhǎng)的,剛開始我也特害怕,可后來我特別喜歡系統(tǒng)報(bào)錯(cuò),因?yàn)檫@樣還知道自己設(shè)計(jì)的程序有錯(cuò)的,然后就是自己翻書找錯(cuò)誤,第一次熟悉程序不能
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- c++課程設(shè)計(jì)--職工信息管理系統(tǒng)
- c++課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告---職工信息管理系統(tǒng)課程設(shè)計(jì)
- c++課程設(shè)計(jì) 教職工信息管理系統(tǒng)源代碼
- c++課程設(shè)計(jì)---學(xué)生信息管理系統(tǒng)
- c++課程設(shè)計(jì)--藥品信息管理系統(tǒng)
- c++客戶信息管理系統(tǒng)課程設(shè)計(jì)
- c++課程設(shè)計(jì)--某高校信息管理
- c++課程設(shè)計(jì)--超市信息管理系統(tǒng)
- 《c++面向?qū)ο蟪绦蛟O(shè)計(jì)》課程設(shè)計(jì)——職工信息管理系統(tǒng)
- c++課程設(shè)計(jì)——學(xué)生信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- c++課程設(shè)計(jì)---公司人員信息管理系統(tǒng)
- c++課程設(shè)計(jì)報(bào)告--學(xué)生信息管理系統(tǒng)
- c++課程設(shè)計(jì)——圖書信息管理系統(tǒng)
- c語言課程設(shè)計(jì)--職工信息管理系統(tǒng)
- 職工信息管理系統(tǒng)c語言課程設(shè)計(jì)
- c語言課程設(shè)計(jì)職工信息管理系統(tǒng)
- c-課程設(shè)計(jì)--- 職工信息管理系統(tǒng)
- c語言課程設(shè)計(jì)---職工信息管理系統(tǒng)
- c語言課程設(shè)計(jì)——職工信息管理系統(tǒng)
- c語言課程設(shè)計(jì)——職工信息管理系統(tǒng)
評(píng)論
0/150
提交評(píng)論