VC++建筑工地信息管理系統(tǒng)_第1頁
VC++建筑工地信息管理系統(tǒng)_第2頁
VC++建筑工地信息管理系統(tǒng)_第3頁
VC++建筑工地信息管理系統(tǒng)_第4頁
VC++建筑工地信息管理系統(tǒng)_第5頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上建筑工地信息管理系統(tǒng)一 題目要求 建立如下四個文件(括號內(nèi)為文件中每條記錄得字段內(nèi)容):(1) 銷售商配件建筑工地(建筑商號碼,配件號,工地號,數(shù)量)(2) 建筑工地(工地號,名字,城市)(3) 配件(配件號,配件名,顏色,重量,產(chǎn)地)(4) 銷售商(號碼,名字,狀態(tài),城市) 功能:(1) 首先建立文件,然后插入數(shù)據(jù),并進(jìn)行刪除,更新操作,最后進(jìn)行查詢操作。(2) 查詢與供應(yīng)商所在城市相同的零件供應(yīng)商,項目供應(yīng)商記錄對。二 需求分析 根據(jù)題目要求,由于銷售商配件建筑工地,建筑工地,配件,銷售商的各種信息要求以文本文件的方式存放在四個文件中,所以應(yīng)提供文件的輸入,輸出等

2、操作;在程序中要瀏覽銷售商配件建筑工地,建筑工地,配件,銷售商的各種信息,應(yīng)提供顯示,查找,增加,更新等操作;另外還應(yīng)提供鍵盤式選擇菜單實現(xiàn)功能選擇。三 總體設(shè)計 我們來分析一下整個系統(tǒng),根據(jù)上面的需求分析,可以將這個系統(tǒng)的設(shè)計分為如下五大模塊:輸入,修改,刪除,查詢,退出。其中輸入,修改,刪除,查詢是四個主要功能。四 詳細(xì)設(shè)計1定義結(jié)構(gòu)體#include<stdio.h> #include<stdlib.h> #include<string.h> struct total char b_num20;/*銷售商號碼*/ char p_num20;/*配件號*

3、/ char num20;/*工地號*/ char num220;/*銷售商為工地提供配件數(shù)量*/ ; struct building char name20;/*工地名稱*/ char num20;/*工地號*/ char city20;/*工地所在城市*/ ; struct peijian char p_name20;/*配件名稱*/ char p_num20;/*配件號碼*/ char p_colour20;/*配件顏色*/ char p_weight20;/*配件重量*/ char p_area20;/*配件產(chǎn)地*/ ; struct business char b_name20;/*

4、銷售商名字*/ char b_num20;/*銷售商號碼*/ char b_state20;/*銷售狀態(tài)*/ char b_city20;/*所在城市*/ ; 2. 各功能模塊設(shè)計 (1)輸入模塊void add1(); void add2(); void add3(); void add4(); void find1(); void find2(); void find3(); void find4(); void del1(); void del2(); void del3(); void del4(); void seek1(); void seek2(); char flag='

5、;y' int n; void add1() char flag='y' struct building build; FILE *fp; if(fp=fopen("c.txt","a+b")=NULL) exit(0); while(flag='y') printf("請輸入建筑工地名稱:"); scanf("%s",); printf("請輸入建筑工地編號:"); scanf("%s",build.num); p

6、rintf("請輸入工地所在城市:"); scanf("%s",build.city); fwrite(&build,sizeof(struct building),1,fp); printf("是否繼續(xù)y/n:n"); scanf(" %c",&flag); fclose(fp); void add2() char flag='y' struct peijian pj; FILE *fp; if(fp=fopen("d.txt","a+b")

7、=NULL) exit(0); while(flag='y') printf("請輸入配件名稱:"); scanf("%s",pj.p_name); printf("請輸入配件編號:"); scanf("%s",pj.p_num); printf("請輸入配件顏色:"); scanf("%s",pj.p_colour); printf("請輸入配件重量:"); scanf("%s",pj.p_weight); print

8、f("請輸入配件產(chǎn)地:"); scanf("%s",pj.p_area); fwrite(&pj,sizeof(struct peijian),1,fp); printf("是否繼續(xù)y/n:n"); scanf(" %c",&flag); fclose(fp); void add3() char flag='y' struct business bus; FILE *fp; if(fp=fopen("e.txt","a+b")=NULL) ex

9、it(0); while(flag='y') printf("請輸入銷售商名稱:"); scanf("%s",bus.b_name); printf("請輸入銷售商編號:"); scanf("%s",bus.b_num); printf("請輸入銷售商狀態(tài):"); scanf("%s",bus.b_state); printf("請輸入銷售商所在城市:"); scanf("%s",bus.b_city); fwrite(

10、&bus,sizeof(struct business),1,fp); printf("是否繼續(xù)y/n:n"); scanf(" %c",&flag); fclose(fp); void add4() char flag='y' struct total bpb; FILE *fp; if(fp=fopen("f.txt","a+b")=NULL) exit(0); while(flag='y') printf("請輸入銷售商號碼:"); scan

11、f("%s",bpb.b_num); printf("請輸入配件編號:"); scanf("%s",bpb.b_num); printf("請輸入建筑工地編號:"); scanf("%s",bpb.num); printf("請輸入銷售商為工地提供配件數(shù)量:"); scanf("%s",bpb.num2); fwrite(&bpb,sizeof(struct total),1,fp); printf("是否繼續(xù)y/n:n");

12、scanf(" %c",&flag); fclose(fp); void find1() FILE *fp; struct building build; char flag='y',find; char name20; if(fp=fopen("c.txt","r+w")=NULL) printf("ntThe system can't open the file!"); while(flag='y') printf("請輸入您要修改的建筑工地名稱:&qu

13、ot;); scanf("%s",name); find='n' rewind(fp); while(fread(&build,sizeof(build),1,fp)=1&&find='n') if(strcmp(name,)=0) find='y' break; if(find='y') printf("建筑工地名稱:%sn",); printf("建筑工地編號:%sn",build.num); print

14、f("建筑工地所在城市:%sn",build.city); printf("請輸入建筑工地名稱:"); scanf("%s",); printf("請輸入建筑工地編號:"); scanf("%s",build.num); printf("請輸入建筑工地所在城市:"); scanf("%s",build.city); fseek(fp,-(long)(sizeof(struct building),1);/*文件標(biāo)記向下*/ fwrite

15、(&build,sizeof(build),1,fp); printf("是否繼續(xù):");/*提示是否繼續(xù)修改另一建筑工地信息*/ scanf(" %c",&flag); fclose(fp); /*關(guān)閉文件*/ (2)修改模塊void find2() FILE *fp; struct peijian pj; char flag='y',find; char name20; if(fp=fopen("d.txt","r+w")=NULL) printf("ntThe sys

16、tem can't open the file!"); while(flag='y') printf("請輸入您要修改的配件名稱:"); scanf("%s",name); find='n' rewind(fp); while(fread(&pj,sizeof(pj),1,fp)=1&&find='n') if(strcmp(pj.p_name,name)=0) find='y' break; if(find='y') printf(

17、"配件名稱:%sn",pj.p_name); printf("配件編號:%sn",pj.p_num); printf("配件顏色:%sn",pj.p_colour); printf("配件重量:%sn",pj.p_weight); printf("配件產(chǎn)地:%sn",pj.p_area); printf("請輸入配件名稱:"); scanf("%s",pj.p_name); printf("請輸入配件編號:"); scanf("

18、;%s",pj.p_name); printf("請輸入配件顏色:"); scanf("%s",pj.p_colour); printf("請輸入配件重量:"); scanf("%s",pj.p_weight); printf("請輸入配件產(chǎn)地:"); scanf("%s",pj.p_name); fseek(fp,-(long)(sizeof(struct peijian),1);/*文件標(biāo)記向下*/ fwrite(&pj,sizeof(pj),1,fp)

19、; printf("是否繼續(xù):");/*提示是否繼續(xù)修改另一配件信息*/ scanf(" %c",&flag); fclose(fp); /*關(guān)閉文件*/ void find3() FILE *fp; struct business bus; char flag='y',find; char name20; if(fp=fopen("e.txt","r+w")=NULL) printf("ntThe system can't open the file!"); w

20、hile(flag='y') printf("請輸入您要修改的銷售商名稱"); scanf("%s",name); find='n' rewind(fp); while(fread(&bus,sizeof(bus),1,fp)=1&&find='n') if(strcmp(bus.b_name,name)=0) find='y' break; if(find='y') printf("銷售商名稱:%sn",bus.b_name);

21、printf("銷售商編號:%sn",bus.b_name); printf("銷售商狀態(tài):%sn",bus.b_state); printf("所在城市:%sn",bus.b_city); printf("請輸入名稱:"); scanf("%s",bus.b_name); printf("請輸入編號:"); scanf("%s",bus.b_num); printf("請輸入狀態(tài):"); scanf("%s",bu

22、s.b_state); printf("請輸入所在城市名:"); scanf("%s",bus.b_city); fseek(fp,-(long)(sizeof(struct business),1);/*文件標(biāo)記向下*/ fwrite(&bus,sizeof(bus),1,fp); printf("是否繼續(xù):");/*提示是否繼續(xù)修改另一已存用戶信息*/ scanf(" %c",&flag); fclose(fp); /*關(guān)閉文件*/ void find4()/*按銷售商號修改*/ FILE *f

23、p; struct total bpb; char flag='y',find; char num20; if(fp=fopen("d:/f.txt","r+w")=NULL)printf("ntThe system can't open the file!"); while(flag='y') printf("請輸入您要修改的對應(yīng)對中銷售商編號:"); scanf("%s",num); find='n' rewind(fp); while

24、(fread(&bpb,sizeof(bpb),1,fp)=1&&find='n') if(strcmp(num,bpb.b_num)=0) find='y' break; if(find='y') printf("銷售商編號:%sn",bpb.b_num); printf("配件編號:%sn",bpb.p_num); printf("建筑工地編號:%sn",bpb.num); printf("提供配件數(shù)量:%sn",bpb.num2); pr

25、intf("請輸入銷售商編號:"); scanf("%s",bpb.b_num); printf("請輸入配件編號:"); scanf("%s",bpb.p_num); printf("請輸入建筑工地編號:"); scanf("%s",bpb.num); printf("請輸入提供配件數(shù)量:"); scanf("%s",bpb.num2); fseek(fp,-(long)(sizeof(struct total),1);/*文件標(biāo)記向

26、下*/ fwrite(&bpb,sizeof(bpb),1,fp); printf("是否繼續(xù):");/*提示是否繼續(xù)修改另一已存用戶信息*/ scanf(" %c",&flag); fclose(fp); /*關(guān)閉文件*/ (3)刪除模塊void del1() struct building build; FILE *fp; if(fp=fopen("c.txt","r+w")=NULL) printf("打開文件出錯"); char flag='y' char

27、 find='n' char mc30; char n; while(flag='y') printf("請輸入您要刪除的建筑工地名稱:"); scanf("%s",mc); rewind(fp); while(fread(&build,sizeof(build),1,fp)=1&&find='n') if(strcmp(mc,)=0) find='y' break; if(find='y') printf("建筑工地名稱

28、:%sn",); printf("建筑工地編號:%sn",build.num); printf("建筑工地所在城市:%sn",build.city); printf("是否確定刪除y/n:"); scanf("%c",&n); if(n='y') strcpy(,""); strcpy(build.num,""); strcpy(build.city,""); fseek(fp,-(

29、long)(sizeof(struct building),1); fwrite(&build,sizeof(build),1,fp); printf("刪除成功n"); printf("是否繼續(xù)刪除y/n:n"); scanf(" %c",&flag); fclose(fp); void del2() struct peijian pj; FILE *fp; if(fp=fopen("d.txt","r+w")=NULL) printf("打開文件出錯");

30、 char flag='y' char find='n' char mc30; char n; while(flag='y') printf("請輸入您要刪除的配件名稱:"); scanf("%s",mc); rewind(fp); while(fread(&pj,sizeof(pj),1,fp)=1&&find='n') if(strcmp(mc,pj.p_name)=0) find='y' break; if(find='y') p

31、rintf("名稱:%sn",pj.p_name); printf("編號:%sn",pj.p_num); printf("顏色:%sn",pj.p_colour); printf("重量:%sn",pj.p_weight); printf("產(chǎn)地:%sn",pj.p_area); printf("是否確定刪除y/n:"); scanf("%c",&n); if(n='y') strcpy(pj.p_name,""

32、;); strcpy(pj.p_num,""); strcpy(pj.p_colour,""); strcpy(pj.p_weight,""); strcpy(pj.p_area,""); fseek(fp,-(long)(sizeof(struct peijian),1); fwrite(&pj,sizeof(pj),1,fp); printf("刪除成功n"); printf("是否繼續(xù)刪除y/n:n"); scanf(" %c",&f

33、lag); fclose(fp); void del3() struct business bus; FILE *fp; if(fp=fopen("e.txt","r+w")=NULL) printf("打開文件出錯"); char flag='y' char find='n' char mc30; char n; while(flag='y') printf("請輸入您要刪除的銷售商名稱:"); scanf("%s",mc); rewind(fp

34、); while(fread(&bus,sizeof(bus),1,fp)=1&&find='n') if(strcmp(mc,bus.b_name)=0) find='y' break; if(find='y') printf("銷售商名稱:%sn",bus.b_name); printf("銷售商編號:%sn",bus.b_num); printf("銷售商狀態(tài):%sn",bus.b_state); printf("銷售商所在城市:%sn"

35、,bus.b_city); printf("是否確定刪除y/n:"); scanf("%c",&n); if(n='y') strcpy(bus.b_name,""); strcpy(bus.b_num,""); strcpy(bus.b_state,""); strcpy(bus.b_city,""); fseek(fp,-(long)(sizeof(struct business),1); fwrite(&bus,sizeof(bus),1

36、,fp); printf("刪除成功n"); printf("是否繼續(xù)刪除y/n:n"); scanf(" %c",&flag); fclose(fp); void del4() struct total bpb; FILE *fp; if(fp=fopen("f.txt","r+w")=NULL) printf("打開文件出錯"); char flag='y' char find='n' char bh30; char n; whil

37、e(flag='y') printf("請輸入您要刪除的銷售商編號:"); scanf("%s",bh); rewind(fp); while(fread(&bpb,sizeof(bpb),1,fp)=1&&find='n') if(strcmp(bh,bpb.b_num)=0) find='y' break; if(find='y') printf("銷售商編號:%sn",bpb.b_num); printf("配件編號:%sn&quo

38、t;,bpb.p_num); printf("建筑工地編號:%sn",bpb.num); printf("提供配件數(shù)量:%sn",bpb.num2); printf("是否確定刪除y/n:"); scanf("%c",&n); if(n='y') strcpy(bpb.b_num,""); strcpy(bpb.p_num,""); strcpy(bpb.num,""); strcpy(bpb.num2,"");

39、 fseek(fp,-(long)(sizeof(struct total),1); fwrite(&bpb,sizeof(bpb),1,fp); printf("刪除成功n"); printf("是否繼續(xù)刪除y/n:n"); scanf(" %c",&flag); fclose(fp); (4)查詢模塊void seek1() FILE *fp1,*fp2; struct peijian pj; struct business bus; char flag='y',seek; if(fp1=fopen

40、("d.txt","r+w")=NULL|(fp2=fopen("e.txt","r+w")=NULL) printf("ntThe system can't open the files!"); while (flag='y') seek='n' rewind(fp1); rewind(fp2); while (fread(&pj,sizeof(pj),1,fp1)=1&&(fread(&bus,sizeof(bus),1

41、,fp2)=1&&seek='n') if(strcmp(pj.p_area,bus.b_city)=0) seek='y' break; if(seek='y') printf("配件名稱:%sn",pj.p_name); printf("配件編號:%sn",pj.p_num); printf("配件顏色:%sn",pj.p_colour); printf("配件重量:%sn",pj.p_weight); printf("配件產(chǎn)地:%sn&

42、quot;,pj.p_area); printf("名稱:%sn",bus.b_name); printf("編號:%sn",bus.b_num); printf("狀態(tài):%sn",bus.b_state); printf("銷售商所在城市:%sn",bus.b_city); printf("是否繼續(xù):");/*提示是否繼續(xù)修改另一配件信息*/ scanf(" %c",&flag); fclose(fp1); fclose(fp2);/*關(guān)閉文件*/ void see

43、k2() FILE *fp1,*fp2; struct building build; struct business bus; char flag='y',seek; if(fp1=fopen("c.txt","r+w")=NULL|(fp2=fopen("e.txt","r+w")=NULL) printf("ntThe system can't open the files!"); while (flag='y') seek='n'

44、rewind(fp1); rewind(fp2); while (fread(&build,sizeof(build),1,fp1)=1&&(fread(&bus,sizeof(bus),1,fp2)=1&&seek='n') if(strcmp(build.city,bus.b_city)=0) seek='y' break; if(seek='y') printf("建筑工地名稱:%sn",); printf("建筑工地編號:%sn",build.num); printf("建筑工地所在城市:%sn",&build.city); printf("名稱:%sn",bus.b_name); printf("編號:%sn",bus.b_num); printf("狀態(tài):%sn",bus.b_state); printf("銷售商所在城市:%sn&quo

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論