C語(yǔ)言-小區(qū)物業(yè)管理-實(shí)驗(yàn)報(bào)告_第1頁(yè)
C語(yǔ)言-小區(qū)物業(yè)管理-實(shí)驗(yàn)報(bào)告_第2頁(yè)
C語(yǔ)言-小區(qū)物業(yè)管理-實(shí)驗(yàn)報(bào)告_第3頁(yè)
C語(yǔ)言-小區(qū)物業(yè)管理-實(shí)驗(yàn)報(bào)告_第4頁(yè)
C語(yǔ)言-小區(qū)物業(yè)管理-實(shí)驗(yàn)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上一. 設(shè)計(jì)目的1.熟悉結(jié)構(gòu)體類型的定義;2.練習(xí)對(duì)數(shù)據(jù)的儲(chǔ)存和讀寫(xiě):對(duì)文件的操作;3.實(shí)現(xiàn)函數(shù)的定義及對(duì)函數(shù)的調(diào)用;4.學(xué)習(xí)鏈表的建立,使用鏈表實(shí)現(xiàn)對(duì)數(shù)據(jù)的改動(dòng);5.掌握調(diào)試程序的方法,熟練單步跟蹤等。二. 設(shè)計(jì)內(nèi)容主要實(shí)現(xiàn)以下幾個(gè)功能:1.管理員及業(yè)主賬號(hào)的創(chuàng)建及核對(duì),管理員密碼的修改; 2錄入業(yè)主信息;3.修改,增加,刪除信息;4.信息的查詢,打印,統(tǒng)計(jì);5.信息的文件儲(chǔ)存;6.文件的讀寫(xiě);7.密碼的加密。三概要設(shè)計(jì)1功能模塊圖; 主函數(shù)管理員業(yè)主創(chuàng)建住戶信息添加 修改查詢打印刪除統(tǒng)計(jì)修改密碼查詢22各個(gè)模塊詳細(xì)的功能描述。1.創(chuàng)建住戶信息:鍵盤(pán)輸入住戶信息,有姓

2、名,聯(lián)系方式,房屋號(hào)碼,房產(chǎn)所有,車位擁有情況,收費(fèi)項(xiàng)目,家庭人口等。并儲(chǔ)存在文件中。2.添加: 選擇進(jìn)行添加,添加住戶信息。并儲(chǔ)存進(jìn)指定文件中。添加完畢后返回主界面。3.修改: 選擇進(jìn)行修改,進(jìn)入后可選擇修改的內(nèi)容(包括聯(lián)系方式,住戶姓名,房間號(hào)等)。根據(jù)修改的內(nèi)容查找用戶,繼續(xù)進(jìn)行修改,輸入新的信息,完成后打印新信息,存入指定文件。不再修改時(shí)返回主界面。4.刪除: 選擇要?jiǎng)h除的人的信息(姓名或者房號(hào)),根據(jù)此信息查找該用戶并刪除相應(yīng)信息,并存入指定文件中。5.打?。?利用讀文件及鏈表打印存入的信息。6.查詢: 打開(kāi)文件,根據(jù)姓名或房間號(hào)查詢此業(yè)主的全部信息。7.統(tǒng)計(jì): 打開(kāi)文件,每個(gè)住戶的

3、車位信息與no比較,不是則進(jìn)行加加操作,統(tǒng)計(jì)出已用車位總數(shù)。8.修改密碼:核對(duì)修改的賬號(hào),輸入新密碼,存入文件,并進(jìn)行加密。9.查詢2:打開(kāi)文件,根據(jù)姓名或房間號(hào)查詢此業(yè)主的姓名,聯(lián)系方式,房間號(hào)信息四詳細(xì)設(shè)計(jì)1功能函數(shù)的調(diào)用關(guān)系圖; 退出退出 界 面 管理員住 戶注冊(cè)登錄選項(xiàng)創(chuàng) 建添 加查 詢打 印存文件讀文件· 件注冊(cè)登錄選項(xiàng)查 詢2改 密修 改選刪 除統(tǒng) 計(jì)2各功能函數(shù)的數(shù)據(jù)流程圖;主 界 面是否繼續(xù)管理打 開(kāi) 文 件 輸入添加的住戶基本信息YN退出(1)添加:(2)創(chuàng)建住戶信息創(chuàng) 建 住 戶 信 息創(chuàng) 建 鏈 表存 入 指 定 文 件輸 入 住 戶 信 息打 開(kāi) 指 定 文

4、件管 理 員 界 面 是否繼續(xù)輸入(3).修改打 開(kāi) 文 件改姓名改電話改房號(hào)輸入修改的姓名是否存在是否存在是否存在打印輸出修改后該人資料存入文件輸入新姓名輸入新電話輸入新房號(hào)輸入修改的電話輸入修改的姓名退出YYYNNN(4).刪除打 開(kāi) 文 件姓 名電 話輸入刪除的姓名是否存在是否存在存入文件成功刪除輸入刪除的電話退出YYN退出N (5).打印打 開(kāi) 文 件查找打印的開(kāi)始節(jié)點(diǎn)打 印(6).查詢返回主界面 打 開(kāi) 文 件按 姓 名按 房 號(hào)輸 入 姓 名輸 入 房 號(hào)比較文件中姓名與輸入的姓名是否相同輸出此住戶信息此用戶不存在是否繼續(xù)查詢查 詢比較文件中姓名與輸入的姓名是否相同此用戶不存在NY

5、(7).統(tǒng)計(jì)打 開(kāi) 文 件對(duì)比所有用戶的車位是否為noSum+輸出車位數(shù)第一個(gè)用戶信息下個(gè)用戶且下個(gè)節(jié)點(diǎn)不為空NY(8)密碼修改 打開(kāi)密碼文件輸入修改密碼的賬號(hào)是否存在此用戶輸入新的密碼打印修改后的登錄信息不存在此用戶,跳出NY3重點(diǎn)設(shè)計(jì)及編碼。(1)登陸時(shí)密碼存入文件及加密 開(kāi)辟兩個(gè)文件,一個(gè)存密碼,另一個(gè)存加密文件,當(dāng)void deng() /登錄FILE *fp;FILE *k;char name30,code30; /用戶名,選擇登錄(注冊(cè)),密碼struct mima *r,*s,*h,*s1; /密碼鏈接的創(chuàng)建int i,p,j; /控制密碼重輸循環(huán)次數(shù)int m;char a6;

6、fp=fopen("mima.txt","a+");k=fopen("temp.txt","a+");if(fp=NULL) printf("此文件不存在,請(qǐng)檢查輸入"); getch(); exit (1);system("cls"); printf("-n");printf("n*請(qǐng)輸入賬號(hào):n");scanf("%s",name);h=(struct mima*)malloc(sizeof(struct mim

7、a);h->next=NULL;r=h;while(!feof(fp)s=(struct mima*)malloc(sizeof(struct mima);fscanf(fp,"%st%sn",s->z,s->m);if(strcmp(name,s->z)=0)break;r->next=s;r=s;r->next=NULL;if(strcmp(name,s->z)!=0)printf("無(wú)效賬號(hào)!nn");printf("是否現(xiàn)在進(jìn)行注冊(cè)?(按1繼續(xù),按其它任意鍵退出)nn");scanf(

8、"%d",&m);system("cls");if(m=1)printf("n-n");printf("n*用戶名:n");scanf("%s",name);fprintf(fp,"%s ",name);printf("n*密碼:n");scanf("%s",code);fprintf(fp,"%sn",code);printf("n注冊(cè)成功!正在跳轉(zhuǎn)登錄···

9、3;nn");Sleep(1500);getch();deng(fp);elseprintf("nnnn 已成功退出!nnn");exit (0);printf(" n*請(qǐng)輸入密碼:n");for(j=0;j<6;j+)aj=getch();printf("*");aj='0' for(i=0,p=3;i<3;i+,p-)if(strcmp(s->m,a)!=0)printf("n密碼錯(cuò)誤!請(qǐng)檢查!nn");printf("n您還有%d次輸入密碼的機(jī)會(huì)nn&qu

10、ot;,p);printf("n*請(qǐng)重新輸入密碼!*n");for(j=0;j<6;j+)aj=getch();printf("*");aj='0'elsebreak;if(p=0)if(strcmp(s->m,code)!=0)printf("密碼錯(cuò)誤!nn");printf("對(duì)不起,你無(wú)權(quán)訪問(wèn)!n");exit(0);if(k=NULL)return;while(ai!='0')s1=ai1234;fputc(s1,k);i+;fclose(k);if(k=fope

11、n("temp.txt","a+")=NULL)return; rewind(k); flushall;fclose(fp);printf("n");printf("n 恭喜您,您已成功登錄!n");printf("n-n");getch();(2)文件的打開(kāi)及寫(xiě)入struct people *fileopen()struct people *head,*s,*r;FILE *fp;long fsize,fno; s=head=(struct people *)malloc(sizeof(str

12、uct people);fp=fopen("zhuhu.txt","rt");if(fp=NULL)printf("n打開(kāi)該管理文件失敗!n也可能不存在,請(qǐng)檢查輸入!n");exit(1);fno=fileno(fp);fsize=filelength(fno);printf("n此文件成功打開(kāi)!n");printf("該文件的大小為:%ld bytesn",fsize);while(!feof(fp)r=(struct people*)malloc(sizeof(struct people);

13、fscanf(fp,"%st%st%st%st%st%st%dnn",r->name,r->pho,r->house,r->blong,r->car,r->money,&r->pop);s->next=r;s=r;s->next=NULL;fclose(fp);return head;printf("_n");struct people *filewrite(struct people *head) /寫(xiě)入文件函數(shù)FILE *fp;char filename30;struct people *

14、q; printf("請(qǐng)輸入現(xiàn)有信息要儲(chǔ)存到de管理文件中:"); scanf("%s",filename); fp=fopen(filename,"wt");if(fp=NULL)printf("該文件無(wú)法找到,請(qǐng)檢查輸入n");exit(1);q=(struct people*)malloc(sizeof(struct people);q=head->next;while(q!=NULL) fprintf(fp,"%st%st%st%st%st%st%dnn",q->name,q

15、->pho,q->house,q->blong,q->car,q->money,q->pop);/*改q=q->next;fclose(fp);return head;(3)鏈表的創(chuàng)立struct people *createlist() FILE *fp; char filename40; struct people *head1,*p1,*p2;int flag;printf("n請(qǐng)輸入要保存的庫(kù)存資料管理文件名(以.txt結(jié)尾):");scanf("%s",filename); if(fp=fopen(fi

16、lename,"wt")=NULL) /*判斷文件是否存在*/printf("nn*寫(xiě)文件出錯(cuò),請(qǐng)檢查輸入*n");getch();exit(1);head1=(struct people *)malloc(sizeof(struct people); /*申請(qǐng)頭結(jié)點(diǎn)空間*/p1=head1;p2=head1;system("cls"); printf("nn *(*_*) 成功創(chuàng)建管理文件包!*n");printf("請(qǐng)輸入基本信息:n 姓名 聯(lián)系電話 門牌號(hào) 房產(chǎn)所有 車位 收費(fèi) 人口 n"

17、);printf("_n"); scanf("%s%s%s%s%s%s%d",p1->name,p1->pho,p1->house,p1->blong,p1->car,p1->money,&p1->pop);printf("_n");p1->next=NULL;fprintf(fp,"%st%st%st%st%st%st%dnn",p1->name,p1->pho,p1->house,p1->blong,p1->car,p1-&g

18、t;money,p1->pop); /*將信息存入文件*/while(1)p1=(struct people *)malloc(sizeof(struct people);printf("是否繼續(xù)輸入基本信息?(按0結(jié)束,任意其他鍵繼續(xù))n");scanf("%d",&p1->flag); if(p1->flag=0) /*控制空間申請(qǐng)條件*/fclose(fp);return head1;printf("_n"); printf("請(qǐng)輸入基本信息:nn 姓名 聯(lián)系電話 門牌號(hào) 房產(chǎn)所有 車位 收費(fèi) 人口 n");scanf("%s%s%s

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論