


版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、1、題目要求用于小區(qū)的物業(yè)管理,管理的項目包括小區(qū)住戶管理、物業(yè)收費項目管理、 物業(yè)收費管理。要求用文件存儲相關信息??呻S時瀏覽、錄入和更改小區(qū)住戶、收費項目等數(shù)據(jù)??呻S時增、刪、改、查收費項目及其標準。生成小區(qū)住戶收費報表(包括全部、已交、欠交)。2、需求分析住戶信息、物業(yè)收費信息要用文件存儲(可用一個文件,也可分成兩個文件) 因而提供文件的輸入/輸出操作;另外,還要提供鍵盤式選擇菜單以實現(xiàn)功能選 擇。3、功能模塊圖整個管理系統(tǒng)可以設計為住戶信息、物業(yè)收費信息的瀏覽、修改、增加等模塊。 依據(jù)程序的數(shù)據(jù)結構和功能,遵照“自頂向下”原則,采用基于函數(shù)的逐步4、數(shù)據(jù)結構可以把住戶信息、物業(yè)收費信息
2、分別放在兩個結構體內(nèi)住戶信息結構體:struct yezhu /業(yè)主結構體 /char id100;char name20;int age;int family_num;int floor_num;char room_num100;float lost;int area;char rz_time20;struct yezhu *next;物業(yè)收費信息結構體:struct wuye / 物業(yè)信息結構體 /char ID100;int last_year;int last_month;float money;int to_time;struct wuye *link;5、源代碼程序:#includ
3、e<stdio.h> #include<stdlib.h> #include<string.h>#include<malloc.h> #include<conio.h> / 函數(shù)聲明 / int mainmenu(); / 主菜單 void xinximenu(); / 物業(yè)信息菜單 void tongjimenu();/ 統(tǒng)計查詢菜單 void mychaozhao(); / 欠費名單 void yezhumenu();/ 業(yè)主菜單 void wuyemenu();/ 物業(yè)菜單void myAdd1();/ 錄入業(yè)主信息 void
4、myAdd2(); / 錄入物業(yè)信息 void myDelete1();/ 刪除業(yè)主信息 void myDelete2();/ 刪除物業(yè)信息 void myReplace1();/ 修改業(yè)主信息 void myReplace2();/ 修改物業(yè)信息 void Display1();/瀏覽業(yè)主信息void Display2();/瀏覽物業(yè)信息void myfind();/ 查詢繳費void Display(struct wuye *p);void Read1();保存業(yè)主信息至文件 保存物業(yè)信息至文件 查找業(yè)主信息 查找物業(yè)信息'void Read2();void save1(struc
5、t yezhu *p);/ void save2(struct wuye *p);/ struct yezhu *find1(char *id); / struct wuye *find2(char *id);/struct yezhu *myAdd3(struct yezhu *p);/添加業(yè)主信息struct wuye *myAdd4(struct wuye *p); struct yezhu / 業(yè)主結構體 /char id100;char name20; int age;int family_num;int floor_num; char room_num100; float lost
6、;int area;char rz_time20;struct yezhu *next;struct wuye / 物業(yè)信息結構體 / char ID100;int last_year;int last_month;float money;int to_time;struct wuye *link;struct yezhu *phead; / 業(yè)主頭結點struct wuye *pHead; / 物業(yè)頭結點int mainmenu()/ 主菜單 / int n;printf("f*歡迎進入小區(qū)物業(yè)管理系統(tǒng)*n");printf("n");printf(&
7、quot;* * * * * * * * * * * * * * * * * * * * * * * * * *n");printf("* *n"); printf("* *n");prin tf("*1.物業(yè)信息系統(tǒng);*n");printf("* *n");prin tf("*2.統(tǒng)計查詢系統(tǒng);*n");printf("* *n");prin tf("*3.退出程序。*n");=請選擇=(13)printf("* *n");
8、printf("* * * * * * * * * * * * * * * * * * * * *n");printf(”請您輸入選項血:");scanf("%d",&n); return n;void xinximenu()/ 物業(yè)信息菜單顯示 / int choose;do printf("'*物業(yè)信息系統(tǒng)*n");*printf("n");printf("* * * * * * * * * * * * * * *=請選擇=( 13)* * * * * * * * * * *
9、 * *n");printf("* *n");printf("* *n");printf("*.小區(qū)業(yè)主信息管理;*n");printf("* *n");printf("*2物業(yè)費用信息管理;*n");printf("* *n");printf("* .返回主菜單。 *n");printf("* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
10、 *n"); printf("請您輸入選項血:");scanf("%d",&choose);switch(choose)case 1:yezhumenu();break;case 2:wuyemenu();break;case 3:return;default:printf(" 輸入錯誤,請重新輸入: n"); while(1);/ 統(tǒng)計查詢菜單顯示 /void tongjimenu() int choose;do printf("f*統(tǒng)計查詢系統(tǒng)*n");*printf("n"
11、;);prin tf("* * * * * * * * * * * * * * *=請選擇=(1 3)* * * * * * * * * * * * *n");printf("* *n");printf("* *n");prin tf("*1查詢繳費信息;*n");printf("* *n");prin tf("*2欠費名單一覽表;*n");printf("* *n");prin tf("*3.返回主菜單。*n");printf(&qu
12、ot;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *n");printf("請您輸入選項血:");scanf("%d",&choose);switch(choose)case 1 : myfind();break; case 2 : mychaozhao();break;case 3 : return; default: printf(" 輸入錯誤,請重新輸入 !nn"); while(1);void yezhum
13、enu()/ 業(yè)主菜單函數(shù)int choose;do 業(yè)主信息編輯系統(tǒng)printf(" * *-n");printf("n");printf("* * * * * * * * * * * * * * * * * * * * * * * * * * *n");printf("* *n");printf("* *n");prin tf("*1.業(yè)主信息錄入;printf("* *n");prin tf("*2.業(yè)主信息修改;printf("* *n&
14、quot;);prin tf("*3.業(yè)主信息刪除;printf("* *n");prin tf("*4.業(yè)主信息瀏覽;printf("* *n");prin tf("*5返回上級菜單。printf("* * * * * * * * * * * * * * * * * * * * * * * * * * * *n");*n");*n");*n");*n");*n");*=請選擇=(15) * *prin tf("請輸入選項血:");sc
15、anf("%d",&choose); /getchar();switch(choose) case 1 :myAdd1(); break; case 2 :myReplace1(); break;case 3 :myDelete1(); break;case 4 :Display1(); break;case 5 : return;default: printf(" 輸入錯誤,請重新輸入: n"); while(1);void myAdd1()/ 錄入業(yè)主信息 / struct yezhu *p;p=(struct yezhu *)malloc(
16、sizeof(struct yezhu); printf(" 請錄入業(yè)主信息: n"); printf("ID:");scanf("%s",p->id);printf(" 姓名 :");scanf("%s",p->name);printf(" 年齡: ");scanf("%d",&p->age);printf(" 家庭成員數(shù): "); scanf("%d",&p->family
17、_num);printf(" 所在樓號: "); scanf("%d",&p->floor_num);printf(" 單元房間號 :"); scanf("%s",p->room_num);printf(" 住宅面積 :");scanf("%d",&p->area);printf(" 入住時間: ");scanf("%s",p->rz_time);myAdd3(p);save1(p);printf
18、(" 錄入成功 !n");添加業(yè)主信息結點 /struct yezhu *myAdd3(struct yezhu *p)/struct yezhu *t;if(phead=NULL)phead=p; p->next=NULL;elset=phead;while(t->next!=NULL) t=t->next;t->next=p; p->next=NULL; return phead;void myReplace1()/ 修改業(yè)主信息 struct yezhu *k;char id100;printf(" 請輸入要修改的業(yè)主 ID:&
19、quot;);scanf("%s",id); k=find1(id); if(k!=NULL) printf(" 請輸入要修改的業(yè)主信息: n"); printf("ID:"); scanf("%s",k->id); printf(" 姓名 :"); scanf("%s",k->name); printf(" 年齡: "); scanf("%d",&k->age); printf(" 家庭成員數(shù): &
20、quot;); scanf("%d",&k->family_num); printf(" 所在樓號: "); scanf("%d",&k->floor_num); printf(" 單元房間號 :"); scanf("%s",k->room_num); printf(" 住宅面積 :"); scanf("%d",&k->area); printf(" 入住時間: "); scanf(&qu
21、ot;%s",k->rz_time); save1(k); printf(" 修改成功 !n");elseprintf(" 無此業(yè)主 ID!n");return;struct yezhu *find1(char *id)/通過 ID 查找業(yè)主信息 /struct yezhu *p;p=phead;while(p!=NULL)if(strcmp(p->id,id)=0) return p;p=p->next; return NULL;void Display1()struct yezhu *p;p=phead;while(p!=
22、NULL)printf("nn");printf("ID:%sn",p->id);printf(" 姓名 :%sn",p->name);printf(" 年齡: %dn",p->age);printf(" 家庭成員數(shù): %dn",p->family_num);printf(" 所在樓號: %dn",p->floor_num); printf(" 單元房間號 :%sn",p->room_num); printf("
23、; 住宅面積 :%dn",p->area); printf(" 入住時間: %sn",p->rz_time); printf("nn");p=p->next;void myDelete1()struct yezhu *p,*pp;struct wuye *k,*kk;char id100;pp=phead;kk=pHead;printf(" 請輸入要刪除人的 ID:");scanf("%s",id);p=find1(id);k=find2(id);if(p!=NULL) if(p=phe
24、ad)phead=p->next; free(p);elsewhile(pp->next!=p) pp=pp->next;pp->next=p->next; free(p);elseprintf(" 無此業(yè)主 ID!n"); return;printf(" 刪除業(yè)主信息成功 !n");save1(p);if(k!=NULL) if(k=pHead)pHead=k->link; free(k);elsewhile(kk->link!=k) kk=kk->link;kk->link=k->link;
25、 free(k);elseprintf(" 無此業(yè)主 ID!n"); return;printf(" 刪除物業(yè)信息成功 !n"); save2(k);void save1(struct yezhu *p) FILE *fp; fp=fopen("yezhu.dat","wb"); p=phead;while(p!=NULL)fwrite(p,sizeof(struct yezhu),1,fp); p=p->next;fclose(fp);void Read1()FILE *fp;struct yezhu *p
26、;fp=fopen("yezhu.dat","rb");while(1)p=(struct yezhu *)malloc(sizeof(struct yezhu); if(feof(fp)break;if(fread(p,sizeof(struct yezhu),1,fp)myAdd3(p);fclose(fp);void wuyemenu() int choose=0;do printf(" * *n");printf("n");printf("* * * * * * * * * * * * * * *
27、 * * * * * * * *n");printf("* * n");printf("* *n");prin tf("*1.物業(yè)信息錄入;printf("* *n");prin tf("*2.物業(yè)信息修改;printf("* *n");prin tf("*3.物業(yè)信息刪除;printf("* *n");*n");*n");*n");物業(yè)費用管理系統(tǒng)=請選擇=(15)prin tf("*4物業(yè)信息瀏覽;*n"
28、;);printf("* *n");prin tf("*5返回上級菜單。*n");printf("* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *n"); printf(" 請輸入選項: "); scanf("%d",&choose); switch(choose)case 1: myAdd2();break;case 2: myReplace2();break;case 3: myDelete2();br
29、eak;case 4: Display2();break;case 5: return;n");default:printf(" 輸入錯誤,請重新輸入: while(1);void myAdd2()/ 錄入物業(yè)信息 /struct wuye *p;struct yezhu *t;int x;p=(struct wuye *)malloc(sizeof(struct wuye); printf(" 請錄入物業(yè)信息: n");printf("ID:");scanf("%s",p->ID);t=find1(p-&g
30、t;ID);if(t!=NULL)printf(" 上一次繳費年份: ");scanf("%d",&p->last_year);printf(" 月份: ");scanf("%d",&p->last_month); printf(" 繳費金額: "); scanf("%f",&p->money); x=p->money/(0.4*t->area); p->to_time=(int)x; myAdd4(p);save2
31、(p);printf(" 錄入成功 !n");elseprintf(" 無此業(yè)主 ID!n");return;struct wuye *myAdd4(struct wuye *p)/添加物業(yè)信息結點 /struct wuye *t; if(pHead=NULL) pHead=p; p->link=NULL;else t=pHead; while(t->link!=NULL) t=t->link; t->link=p; p->link=NULL;return pHead;struct wuye *find2(char *id)
32、/通過姓名查找繳費信息 /struct wuye *p; p=pHead; while(p!=NULL) if(strcmp(p->ID,id)=0) return p; p=p->link;return NULL;void myfind()struct wuye *p;char a100; printf(" 請輸入要查找的業(yè)主 id :"); scanf("%s",a);p=find2(a); if(p!=NULL)printf(" 業(yè)主已經(jīng)存繳 !n");elseprintf(" 業(yè)主尚沒存繳信息 !n&qu
33、ot;); return;Display(p);void myReplace2()/char id20;int x;struct wuye *k;struct yezhu *t;printf(" 請輸入要修改的業(yè)主 ID:"); scanf("%s",id);if(k!=NULL)printf(" 您要修改的信息為: n"); printf(" 請輸入新的信息: n"); printf("ID:");scanf("%s",k->ID);printf(" 上一次
34、繳費年份: "); scanf("%d",&k->last_year); printf(" 月份: "); scanf("%d",&k->last_month); printf(" 繳費金額: "); scanf("%f",&k->money); t=find1(k->ID); x=(int)k->money/(0.4*t->area); k->to_time=(int)x; myAdd4(k);save2(k); pr
35、intf(" 修改成功 !n");elseprintf(" 無此業(yè)主 ID!n"); return;void myDelete2()/struct wuye *p,*pp;char id100;pp=pHead;printf(" 請輸入要刪除人的 ID:");scanf("%s",id);p=find2(id);if(p!=NULL) if(p=pHead)pHead=p->link; free(p);elsewhile(pp->link!=p) pp=pp->link;pp->link=p
36、->link; free(p);elseprintf(" 無此業(yè)主 ID!n");return;save2(p);printf(" 刪除成功 !n");void Display2()struct wuye *p; p=pHead; while(p!=NULL) printf("ID:%sn",p->ID);printf(" 最 后 一 次 繳 費 日 期 : %d 年 %d 月 n",p->last_year,p->last_month);printf(" 繳費金額 :%f 元 n
37、",p->money);printf(”費用有效期:c個月 n",p->to_time);printf("nnn");p=p->link;void Display(struct wuye *p)printf(" 業(yè)主 ID:%sn",p->ID);printf(" 最 后 一 次 繳 費 日 期 : %d 年 %d 月 n",p->last_year,p->last_month);printf(" 最后一次繳費金額: %fn",p->money);pri
38、ntf("費用有效期:d個月 n",p->to_time);void Read2()/FILE *fp;struct wuye *p;fp=fopen("wuye.dat","rb");while(1)p=(struct wuye *)malloc(sizeof(struct wuye);if(feof(fp)break;if(fread(p,sizeof(struct wuye),1,fp) myAdd4(p);fclose(fp);void save2(struct wuye *p)/FILE *fp; fp=fopen("wuye.dat","wb");p=pHead;w
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國餐飲連鎖行業(yè)運營市場深度調(diào)查及投資策略研究報告
- 2025-2030年中國阿莫西林行業(yè)競爭現(xiàn)狀及投資戰(zhàn)略研究報告
- 2025-2030年中國鍍層鋼板市場運營態(tài)勢與發(fā)展風險分析報告
- 2025-2030年中國酒石酸美托洛爾緩釋片行業(yè)發(fā)展趨勢及投資戰(zhàn)略研究報告
- 2025-2030年中國運動服飾行業(yè)運行現(xiàn)狀及發(fā)展前景趨勢分析報告
- 2025-2030年中國西廚設備行業(yè)市場發(fā)展現(xiàn)狀及前景趨勢分析報告
- 2025-2030年中國營養(yǎng)保健食品市場發(fā)展狀況及投資戰(zhàn)略研究報告
- 病人轉(zhuǎn)運合同范本
- 2025河北省安全員B證(項目經(jīng)理)考試題庫
- 2025年廣東省安全員知識題庫及答案
- 2025年天津三源電力集團限公司社會招聘33人高頻重點模擬試卷提升(共500題附帶答案詳解)
- 西安2025年陜西西安音樂學院專任教師招聘20人筆試歷年參考題庫附帶答案詳解
- 國家安全與生態(tài)安全
- 課題申報參考:養(yǎng)老金融在三支柱養(yǎng)老金體系中的作用機制與路徑仿真研究
- 2024-2025學年第二學期學校團委工作計劃(附2月-6月安排表)
- 培養(yǎng)自律能力主題班會
- 【物理】牛頓第一定律 2024-2025學年人教版物理八年級下冊
- 2025網(wǎng)格員考試題庫及參考答案
- 2025年湖南有色金屬職業(yè)技術學院高職單招職業(yè)技能測試近5年??及鎱⒖碱}庫含答案解析
- 2025年春新冀教版英語三年級下冊課件 U1L1
- 川教版2024-2025學年六年級下冊信息技術全冊教案
評論
0/150
提交評論