版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 本科生課程論文封面</b></p><p> 課程名稱 計(jì)算機(jī)高級語言課程設(shè)計(jì)(C)</p><p> 教師姓名 </p><p> 本科生姓名 </p><p> 本科生學(xué)號
2、 </p><p> 本科生專業(yè) 網(wǎng)絡(luò)工程 </p><p> 所在院系 計(jì)算機(jī)學(xué)院 </p><p> 類別: 工科 </p><p> 日期: 16/1/2013
3、 </p><p><b> 摘要:</b></p><p> 本文完成了綜合練習(xí)中第20題物業(yè)管理系統(tǒng)的編程,程序用于小區(qū)的管理,管理的項(xiàng)目包括小區(qū)住戶管理、物業(yè)收費(fèi)項(xiàng)目管理、物業(yè)收費(fèi)管理,并用文件存儲(chǔ)相關(guān)信息。文中給出了需求分析、功能模塊圖、數(shù)據(jù)結(jié)構(gòu)、詳細(xì)設(shè)計(jì)、程序運(yùn)行結(jié)果、總結(jié)和致謝。</p><p><b
4、> 目 錄</b></p><p><b> 課程設(shè)計(jì)評語2</b></p><p><b> 作者簡介及摘要3</b></p><p><b> 目 錄4</b></p><p> 1.課程論文題目5</p><p>
5、;<b> 2.總體設(shè)計(jì)6</b></p><p><b> 3.詳細(xì)設(shè)計(jì)8</b></p><p> 4.程序運(yùn)行結(jié)果12</p><p> 5.編程中遇到的困難及解決方法16</p><p> 6.總結(jié)心得及良好建議17</p><p><b&g
6、t; 7.致謝18</b></p><p><b> 8.參考文獻(xiàn)19</b></p><p> 1.課程論文題目:物業(yè)管理系統(tǒng)</p><p><b> 1.1問題描述</b></p><p> 物業(yè)管理系統(tǒng)問題的描述是:用于小區(qū)的物業(yè)管理,管理的項(xiàng)目包括小區(qū)住戶管理、物
7、業(yè)收費(fèi)項(xiàng)目管理、物業(yè)收費(fèi)管理。要求用文件存儲(chǔ)相關(guān)信息。</p><p><b> 1.2基本要求</b></p><p> 可隨時(shí)瀏覽、錄入和更改小區(qū)住戶、收費(fèi)項(xiàng)目等數(shù)據(jù)。</p><p> 隨時(shí)可增、刪、改、查收費(fèi)項(xiàng)目及其標(biāo)準(zhǔn)。</p><p> 生成小區(qū)住戶收費(fèi)報(bào)表(包括全部、已交、欠交)。</p>
8、;<p><b> 1.3需求分析</b></p><p> 住戶信息、物業(yè)收費(fèi)信息用一個(gè)文件存儲(chǔ),因而要提供文件的輸入/輸出操作;另外,還要提供鍵盤式選擇菜單以實(shí)現(xiàn)功能選擇。</p><p><b> 2.總體設(shè)計(jì):</b></p><p><b> 2.1總體思路</b>&l
9、t;/p><p> 整個(gè)管理系統(tǒng)設(shè)計(jì)為住戶信息、物業(yè)收費(fèi)信息的瀏覽、增加、更改、刪除等模塊。</p><p><b> 2.2功能模塊圖</b></p><p><b> 2.3數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)</b></p><p> 根據(jù)問題描述,將住戶信息、物業(yè)收費(fèi)信息放在一個(gè)resident結(jié)構(gòu)體內(nèi)。<
10、;/p><p><b> 結(jié)點(diǎn)結(jié)構(gòu):</b></p><p><b> 定義如下:</b></p><p> #define N 50 </p><p><b> int M;</b></p><p> struct resident</p&
11、gt;<p><b> {</b></p><p> int fh;/*房號*/</p><p> char name[10];/*戶主姓名*/</p><p> int bjf;/*保潔費(fèi)*/</p><p> int baf;/*保安費(fèi)*/</p><p> int
12、tcf;/*停車費(fèi)*/</p><p> int yj;/*已交*/</p><p> int zj;/*總計(jì)*/</p><p> int qj;/*欠交*/</p><p> }s[N];/*s[N]中每個(gè)數(shù)組元素對應(yīng)一個(gè)住戶*/</p><p> 將住戶信息儲(chǔ)存在ZHSFBB.txt文本文件中</
13、p><p><b> 內(nèi)容及格式:</b></p><p> 101 wang 86 50 80 120</p><p> 102 zhang 77 50 0 127</p><p> 201 zhao 80 50 60 150</p><p> 202 shang 70 55 10 100
14、 </p><p> 301 zhou 88 66 55 130</p><p> 302 mei 56 89 13 90</p><p> 401 sun 46 66 79 80</p><p> 402 tian 50 80 40 140</p><p> 501 fang 60 70 30 120<
15、;/p><p> 502 chen 90 60 40 88</p><p> 601 bian 40 40 40 110</p><p> 602 wu 80 80 40 80</p><p><b> 3.詳細(xì)設(shè)計(jì)</b></p><p> 3.1數(shù)據(jù)讀入模塊:</p>&l
16、t;p> 小區(qū)住戶信息采用結(jié)構(gòu)體形式,把一個(gè)住戶的信息作為結(jié)構(gòu)體成員,若要存放若干個(gè)住戶信息就要用到結(jié)構(gòu)體數(shù)組,一條記錄對應(yīng)一戶住戶的信息,既符合習(xí)慣也方便信息管理。</p><p> 代碼:/************************數(shù)據(jù)讀入模塊***********************/</p><p> void Re_file()</p><
17、;p><b> {</b></p><p><b> FILE *fp;</b></p><p><b> M=0;</b></p><p> fp=fopen("ZHSFBB.txt","r");</p><p> wh
18、ile(fscanf(fp,"%d%s%d%d%d%d",&s[M].fh,s[M].name,&s[M].bjf,&s[M].baf,&s[M].tcf,&s[M].yj)!=EOF)M++;</p><p> fclose(fp);</p><p><b> }</b></p><
19、p><b> 3.2 計(jì)算模塊</b></p><p> 主函數(shù)中已讀入原始數(shù)據(jù),計(jì)算:總計(jì)=保潔費(fèi)+保安費(fèi)+停車費(fèi),欠交=總計(jì)-已交。</p><p><b> 3.3增加模塊</b></p><p> 該模塊的功能是增加新的小區(qū)住戶記錄,用戶從鍵盤輸入并逐條寫到原來的輸入文件中。</p>&
20、lt;p> 代碼:/************************增加模塊***********************/</p><p> void Append()</p><p> { int n,i;</p><p> printf("可輸入增加的住戶數(shù):");</p><p> scanf(&q
21、uot;%d",&n);M=n+N;</p><p> printf("現(xiàn)在,請輸入相關(guān)信息:\n");</p><p> for(i=1;i<=n;i++)</p><p> { printf("房號:");</p><p> scanf("%d",
22、&s[M-n-1+i].fh);</p><p> printf("戶主姓名:");</p><p> scanf("%s",s[M-n-1+i].name);</p><p> printf("保潔費(fèi):");</p><p> scanf("%d"
23、;,&s[M-n-1+i].bjf);</p><p> printf("保安費(fèi):");</p><p> scanf("%d",&s[M-n-1+i].baf);</p><p> printf("已交:");</p><p> scanf("%d
24、",&s[M-n-1+i].yj);</p><p><b> }</b></p><p><b> }</b></p><p><b> 3.4修改模塊:</b></p><p> 該模塊的功能是根據(jù)房號或戶主姓名找到要修改的記錄,并提示用戶修改該記
25、錄的哪部分信息(保安費(fèi)、保潔費(fèi)、停車費(fèi)、已交),然后根據(jù)用戶的選擇修改相應(yīng)信息并形成新的報(bào)表。</p><p><b> 3.5刪除模塊</b></p><p> 用戶輸入要?jiǎng)h除的房號或姓名,根據(jù)房號或戶主姓名查找工資記錄并刪除,刪除位置后面的記錄往前移動(dòng)。</p><p> 代碼:/************************刪除模
26、塊***********************/</p><p> void Delete()</p><p> {int i,j=-1,d;char m[20];</p><p> printf("刪除模塊:");</p><p> printf("\n\n\n");</p>
27、<p> printf(" *******************************\n");</p><p> printf(" * *\n");</p><p> printf(" *
28、 *\n");</p><p> printf(" * *\n");</p><p> printf(" * 1:房號 2:戶主姓名 *\n"); </p><p> printf("
29、 * *\n");</p><p> printf(" * *\n");</p><p> printf(" * *\n");<
30、/p><p> printf(" *******************************\n");</p><p> printf("\n\n請輸入刪除選項(xiàng):");</p><p> scanf("%d",&i);</p><p><b>
31、if (i==1)</b></p><p> {printf("請輸入房號:");</p><p> scanf("%d",&d);</p><p> for(i=0;i<N;i++)</p><p> if(d=s[i].fh)</p><p>
32、;<b> j=i;</b></p><p><b> }</b></p><p> else if(i==2)</p><p> {printf("請輸入戶主姓名:");</p><p> scanf("%s",&m);</p>
33、<p> for(i=0;i<N;i++)</p><p> if(strcmp(m,s[i].name)==0)</p><p><b> j=i;</b></p><p><b> }</b></p><p><b> if(j!=-1)</b>
34、;</p><p><b> { M=M-1;</b></p><p> for(i=j;i<-N&&j!=-1;i++)</p><p> s[i]=s[i+1];} else if(j==-1)</p><p> printf("沒有找到!\n");</
35、p><p><b> }</b></p><p> 3.6任務(wù)結(jié)束后的返回菜單</p><p> void Menu()</p><p> {int sele;</p><p><b> sele=1;</b></p><p> while(s
36、ele)</p><p> { system("cls");</p><p> printf("\n\n");</p><p> printf(" *************************************\n");</p><p> printf(&q
37、uot; * *\n");</p><p> printf(" * 1:瀏覽 2:增加 *\n");</p><p> printf(" * 3:更改 4:刪除 *\n")
38、;</p><p> printf(" * 5:退出 *\n");</p><p> printf(" * *\n");</p><p> printf(" *******
39、******************************\n");</p><p> printf("\n\n請選擇功能序號:");</p><p> scanf("%d",&sele);</p><p> switch(sele)</p><p> { case 1:Ca
40、lculate();Display();Menu();break;</p><p> case 2:Append();Display();Menu();break;</p><p> case 3:Modify();Display();Menu();break;</p><p> case 4:Delete();Display();Menu();break;&
41、lt;/p><p> case 5:exit(0);break;</p><p><b> }</b></p><p> printf("\n\n按任意鍵繼續(xù)\n");</p><p><b> getch();</b></p><p><b&g
42、t; }</b></p><p> Wr_file();</p><p><b> }</b></p><p><b> 4. 程序運(yùn)行結(jié)果</b></p><p> 4.1主函數(shù)界面(也稱主界面)</p><p><b> 主界面如圖所示。
43、</b></p><p><b> 4.2瀏覽模塊</b></p><p> 在主界面中輸入“1”,然后按Enter鍵,進(jìn)入瀏覽模塊,如圖所示。</p><p><b> 4.3增加模塊</b></p><p> 在主界面中輸入“2”,然后按Enter鍵,進(jìn)入增加模塊,如圖所示。
44、</p><p><b> 4.4更改模塊</b></p><p> 在主界面中輸入“3”,然后按“Enter”鍵,進(jìn)入更改模塊,如圖所示。</p><p><b> 4.5刪除模塊</b></p><p> 在主界面中輸入“4”,然后按“Enter”鍵,進(jìn)入刪除模塊,如圖所示。</p
45、><p> 5.編程中遇到的困難及解決方法</p><p> ?。?)課程設(shè)計(jì)剛開始的時(shí)候,C語言的教學(xué)尚未結(jié)束,“用戶自己建立數(shù)據(jù)類型”(包括結(jié)構(gòu)體、鏈表、共用體、枚舉類型、聲明新類型等內(nèi)容)及“對文件的輸入輸出”兩大章重要內(nèi)容還未進(jìn)行學(xué)習(xí),這樣的條件下很難進(jìn)行程序的編輯。在這種情況下,我采取“磨刀不誤砍柴工”的策略,先深入研讀并理解了《C程序設(shè)計(jì)(第四版)》一書中這兩張的內(nèi)容,并將相應(yīng)的
46、一些簡單程序上機(jī)調(diào)試,做到基本熟練掌握這些內(nèi)容后,才著手此程序的編譯工作。</p><p> (2)作為第一個(gè)剛C語言不到半年的“入門級”新手,第一次面對此種較大型的程序案例,剛開始著實(shí)不知道從何下手,所以我決定先練習(xí)《基于PBL的C語言課程設(shè)計(jì)及學(xué)習(xí)指導(dǎo)》一書上的實(shí)例,通過“庖丁解?!保议_始懂得不管一個(gè)程序多么復(fù)雜,其實(shí)它都是由最基本的函數(shù)組成,只要我們弄清結(jié)構(gòu)、一切都會(huì)迎刃而解。</p>&
47、lt;p> ?。?)初讀題目時(shí)無法抽象出問題模型,而“舉一反三”中的實(shí)例與本課題有很多相似之處,通過“舉一反三”,我總結(jié)出了此題目的設(shè)計(jì)思路、功能模塊、數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)等。</p><p> 6.總結(jié)心得及良好建議</p><p> 這次課程設(shè)計(jì)共八次,時(shí)間不長,卻感受很深。無論是在學(xué)習(xí)知識還是在解決問題的能力上,都有深刻的認(rèn)識,總結(jié)如下:</p><p>
48、?。?)程序設(shè)計(jì)思路一定要清晰,主函數(shù)盡量簡潔,這樣在調(diào)試過程中若出現(xiàn)錯(cuò)誤,只要沿著主函數(shù)的思路逐個(gè)排查即可。一個(gè)條理清楚的框架結(jié)構(gòu)有利于編譯過程中查找并解決問題。</p><p> ?。?)編譯、調(diào)試時(shí)最好分模塊進(jìn)行。我第一次調(diào)試時(shí)是在整個(gè)程序編輯完后一次性編譯,一下子出現(xiàn)了很多處錯(cuò)誤。在老師及同學(xué)們的指導(dǎo)下,我新建了一個(gè)工作區(qū)并從主函數(shù)開始分模塊進(jìn)行編譯調(diào)試,一個(gè)函數(shù)確認(rèn)沒有錯(cuò)誤后在加入下一個(gè)函數(shù),這樣分步進(jìn)
49、行使每處錯(cuò)誤便于查找和更改。</p><p> (3) 細(xì)節(jié)處一定要注意,我剛剛編程時(shí)很容易丟落“;”“}”等符號,而這會(huì)對程序的編譯造成極大的不便。一個(gè)優(yōu)秀的程序員應(yīng)時(shí)刻注意細(xì)節(jié),養(yǎng)成細(xì)心的良好品質(zhì)。</p><p><b> 7.致謝</b></p><p> 在課程設(shè)計(jì)過程中經(jīng)常遇到諸多問題,多虧有劉老師指導(dǎo)和班上同學(xué)的耐心幫助,才
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 物業(yè)管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 小區(qū)物業(yè)管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 小區(qū)物業(yè)管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)----物業(yè)管理系統(tǒng)
- c語言課程設(shè)計(jì)報(bào)告(宿舍管理系統(tǒng))
- c語言課程設(shè)計(jì)報(bào)告--車票管理系統(tǒng)
- c語言課程設(shè)計(jì)報(bào)告--成績管理系統(tǒng)
- c語言課程設(shè)計(jì)報(bào)告(宿舍管理系統(tǒng))
- c語言課程設(shè)計(jì)報(bào)告---銷售管理系統(tǒng)
- c語言課程設(shè)計(jì)報(bào)告-物資管理系統(tǒng)
- 車票管理系統(tǒng)c語言課程設(shè)計(jì)報(bào)告
- c語言課程設(shè)計(jì)---職工管理系統(tǒng)設(shè)計(jì)報(bào)告
- delphi小區(qū)物業(yè)管理系統(tǒng)課程設(shè)計(jì)
- c#課程設(shè)計(jì)--小區(qū)物業(yè)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 數(shù)據(jù)庫小區(qū)物業(yè)管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- c語言課程信息管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 管理信息系統(tǒng)課程設(shè)計(jì)報(bào)告--小區(qū)物業(yè)管理系統(tǒng)
- c語言課程設(shè)計(jì)報(bào)告課程信息管理系統(tǒng)
- c語言課程設(shè)計(jì)報(bào)告~圖書管理系統(tǒng)
- c語言課程設(shè)計(jì)銷售管理系統(tǒng)報(bào)告
評論
0/150
提交評論