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

下載本文檔

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

文檔簡介

/建筑工地信息管理系統(tǒng)一題目要求建立如下四個文件(括號內(nèi)為文件中每條記錄得字段內(nèi)容):銷售商—配件—建筑工地(建筑商號碼,配件號,工地號,數(shù)量)建筑工地(工地號,名字,城市)配件(配件號,配件名,顏色,重量,產(chǎn)地)銷售商(號碼,名字,狀態(tài),城市)功能:首先建立文件,然后插入數(shù)據(jù),并進行刪除,更新操作,最終進行查詢操作。查詢和供應商所在城市相同的零件—供應商,項目—供應商記錄對。二需求分析依據(jù)題目要求,由于銷售商—配件—建筑工地,建筑工地,配件,銷售商的各種信息要求以文本文件的方式存放在四個文件中,所以應供應文件的輸入,輸出等操作;在程序中要閱讀銷售商—配件—建筑工地,建筑工地,配件,銷售商的各種信息,應供應顯示,查找,增加,更新等操作;另外還應供應鍵盤式選擇菜單實現(xiàn)功能選擇。三總體設(shè)計我們來分析一下整個系統(tǒng),依據(jù)上面的需求分析,可以將這個系統(tǒng)的設(shè)計分為如下五大模塊:輸入,修改,刪除,查詢,退出。其中輸入,修改,刪除,查詢是四個主要功能。四具體設(shè)計1.定義結(jié)構(gòu)體#include<stdio.h>#include<stdlib.h>#include<string.h>structtotal{charb_num[20];/*銷售商號碼*/charp_num[20];/*配件號*/charnum[20];/*工地號*/charnum2[20];/*銷售商為工地供應配件數(shù)量*/};structbuilding{charname[20];/*工地名稱*/charnum[20];/*工地號*/charcity[20];/*工地所在城市*/};structpeijian{charp_name[20];/*配件名稱*/charp_num[20];/*配件號碼*/charp_colour[20];/*配件顏色*/charp_weight[20];/*配件重量*/charp_area[20];/*配件產(chǎn)地*/};structbusiness{charb_name[20];/*銷售商名字*/charb_num[20];/*銷售商號碼*/charb_state[20];/*銷售狀態(tài)*/charb_city[20];/*所在城市*/};2.各功能模塊設(shè)計(1)輸入模塊voidadd1();voidadd2();voidadd3();voidadd4();voidfind1();voidfind2();voidfind3();voidfind4();voiddel1();voiddel2();voiddel3();voiddel4();voidseek1();voidseek2();charflag='y';intn;voidadd1(){charflag='y';structbuildingbuild;FILE*fp;if((fp=fopen("c.txt","a+b"))==NULL){exit(0);}while(flag=='y'){printf("請輸入建筑工地名稱:");scanf("%s",);printf("請輸入建筑工地編號:");scanf("%s",build.num);printf("請輸入工地所在城市:");scanf("%s",build.city);fwrite(&build,sizeof(structbuilding),1,fp);printf("是否接著y/n:\n");scanf("%c",&flag);}fclose(fp);}voidadd2(){charflag='y';structpeijianpj;FILE*fp;if((fp=fopen("d.txt","a+b"))==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);printf("請輸入配件產(chǎn)地:");scanf("%s",pj.p_area);fwrite(&pj,sizeof(structpeijian),1,fp);printf("是否接著y/n:\n");scanf("%c",&flag);}fclose(fp);}voidadd3(){charflag='y';structbusinessbus;FILE*fp;if((fp=fopen("e.txt","a+b"))==NULL){exit(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(&bus,sizeof(structbusiness),1,fp);printf("是否接著y/n:\n");scanf("%c",&flag);}fclose(fp);}voidadd4(){charflag='y';structtotalbpb;FILE*fp;if((fp=fopen("f.txt","a+b"))==NULL){exit(0);}while(flag=='y'){printf("請輸入銷售商號碼:");scanf("%s",bpb.b_num);printf("請輸入配件編號:");scanf("%s",bpb.b_num);printf("請輸入建筑工地編號:");scanf("%s",bpb.num);printf("請輸入銷售商為工地供應配件數(shù)量:");scanf("%s",bpb.num2);fwrite(&bpb,sizeof(structtotal),1,fp);printf("是否接著y/n:\n");scanf("%c",&flag);}fclose(fp);}voidfind1(){FILE*fp;structbuildingbuild;charflag='y',find;charname[20];if((fp=fopen("c.txt","r+w"))==NULL)printf("\n\tThesystemcan'topenthefile!!");while(flag=='y'){printf("請輸入您要修改的建筑工地名稱:");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("建筑工地名稱:%s\n",);printf("建筑工地編號:%s\n",build.num);printf("建筑工地所在城市:%s\n",build.city);printf("請輸入建筑工地名稱:");scanf("%s",);printf("請輸入建筑工地編號:");scanf("%s",build.num);printf("請輸入建筑工地所在城市:");scanf("%s",build.city);fseek(fp,-(long)(sizeof(structbuilding)),1);/*文件標記向下*/fwrite(&build,sizeof(build),1,fp);}printf("是否接著:");/*提示是否接著修改另一建筑工地信息*/scanf("%c",&flag);}fclose(fp);/*關(guān)閉文件*/}(2)修改模塊voidfind2(){FILE*fp;structpeijianpj;charflag='y',find;charname[20];if((fp=fopen("d.txt","r+w"))==NULL)printf("\n\tThesystemcan'topenthefile!!");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("配件名稱:%s\n",pj.p_name);printf("配件編號:%s\n",pj.p_num);printf("配件顏色:%s\n",pj.p_colour);printf("配件重量:%s\n",pj.p_weight);printf("配件產(chǎn)地:%s\n",pj.p_area);printf("請輸入配件名稱:");scanf("%s",pj.p_name);printf("請輸入配件編號:");scanf("%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(structpeijian)),1);/*文件標記向下*/fwrite(&pj,sizeof(pj),1,fp);}printf("是否接著:");/*提示是否接著修改另一配件信息*/scanf("%c",&flag);}fclose(fp);/*關(guān)閉文件*/}voidfind3(){FILE*fp;structbusinessbus;charflag='y',find;charname[20];if((fp=fopen("e.txt","r+w"))==NULL)printf("\n\tThesystemcan'topenthefile!!");while(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("銷售商名稱:%s\n",bus.b_name);printf("銷售商編號:%s\n",bus.b_name);printf("銷售商狀態(tài):%s\n",bus.b_state);printf("所在城市:%s\n",bus.b_city);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);fseek(fp,-(long)(sizeof(structbusiness)),1);/*文件標記向下*/fwrite(&bus,sizeof(bus),1,fp);}printf("是否接著:");/*提示是否接著修改另一已存用戶信息*/scanf("%c",&flag);}fclose(fp);/*關(guān)閉文件*/}voidfind4()/*按銷售商號修改*/{FILE*fp;structtotalbpb;charflag='y',find;charnum[20];if((fp=fopen("d:/f.txt","r+w"))==NULL)printf("\n\tThesystemcan'topenthefile!!");while(flag=='y'){printf("請輸入您要修改的對應對中銷售商編號:");scanf("%s",num);find='n';rewind(fp);while((fread(&bpb,sizeof(bpb),1,fp))==1&&find=='n'){if(strcmp(num,bpb.b_num)==0){find='y';break;}}if(find=='y'){printf("銷售商編號:%s\n",bpb.b_num);printf("配件編號:%s\n",bpb.p_num);printf("建筑工地編號:%s\n",bpb.num);printf("供應配件數(shù)量:%s\n",bpb.num2);printf("請輸入銷售商編號:");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(structtotal)),1);/*文件標記向下*/fwrite(&bpb,sizeof(bpb),1,fp);}printf("是否接著:");/*提示是否接著修改另一已存用戶信息*/scanf("%c",&flag);}fclose(fp);/*關(guān)閉文件*/}(3)刪除模塊voiddel1(){structbuildingbuild;FILE*fp;if((fp=fopen("c.txt","r+w"))==NULL)printf("打開文件出錯");{charflag='y';charfind='n';charmc[30];charn;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("建筑工地名稱:%s\n",);printf("建筑工地編號:%s\n",build.num);printf("建筑工地所在城市:%s\n",build.city);printf("是否確定刪除y/n:");scanf("%c",&n);if(n=='y')strcpy(,"");strcpy(build.num,"");strcpy(build.city,"");fseek(fp,-(long)(sizeof(structbuilding)),1);fwrite(&build,sizeof(build),1,fp);printf("刪除勝利\n");}printf("是否接著刪除y/n:\n");scanf("%c",&flag);}fclose(fp);}}voiddel2(){structpeijianpj;FILE*fp;if((fp=fopen("d.txt","r+w"))==NULL)printf("打開文件出錯");{charflag='y';charfind='n';charmc[30];charn;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'){printf("名稱:%s\n",pj.p_name);printf("編號:%s\n",pj.p_num);printf("顏色:%s\n",pj.p_colour);printf("重量:%s\n",pj.p_weight);printf("產(chǎn)地:%s\n",pj.p_area);printf("是否確定刪除y/n:");scanf("%c",&n);if(n=='y')strcpy(pj.p_name,"");strcpy(pj.p_num,"");strcpy(pj.p_colour,"");strcpy(pj.p_weight,"");strcpy(pj.p_area,"");fseek(fp,-(long)(sizeof(structpeijian)),1);fwrite(&pj,sizeof(pj),1,fp);printf("刪除勝利\n");}printf("是否接著刪除y/n:\n");scanf("%c",&flag);}fclose(fp);}}voiddel3(){structbusinessbus;FILE*fp;if((fp=fopen("e.txt","r+w"))==NULL)printf("打開文件出錯");{charflag='y';charfind='n';charmc[30];charn;while(flag=='y'){printf("請輸入您要刪除的銷售商名稱:");scanf("%s",mc);rewind(fp);while((fread(&bus,sizeof(bus),1,fp))==1&&find=='n'){if(strcmp(mc,bus.b_name)==0){find='y';break;}}if(find=='y'){printf("銷售商名稱:%s\n",bus.b_name);printf("銷售商編號:%s\n",bus.b_num);printf("銷售商狀態(tài):%s\n",bus.b_state);printf("銷售商所在城市:%s\n",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(structbusiness)),1);fwrite(&bus,sizeof(bus),1,fp);printf("刪除勝利\n");}printf("是否接著刪除y/n:\n");scanf("%c",&flag);}fclose(fp);}}voiddel4(){structtotalbpb;FILE*fp;if((fp=fopen("f.txt","r+w"))==NULL)printf("打開文件出錯");{charflag='y';charfind='n';charbh[30];charn;while(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("銷售商編號:%s\n",bpb.b_num);printf("配件編號:%s\n",bpb.p_num);printf("建筑工地編號:%s\n",bpb.num);printf("供應配件數(shù)量:%s\n",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,"");fseek(fp,-(long)(sizeof(structtotal)),1);fwrite(&bpb,sizeof(bpb),1,fp);printf("刪除勝利\n");}printf("是否接著刪除y/n:\n");scanf("%c",&flag);}fclose(fp);}}(4)查詢模塊voidseek1(){FILE*fp1,*fp2;structpeijianpj;structbusinessbus;charflag='y',seek;if((fp1=fopen("d.txt","r+w"))==NULL||(fp2=fopen("e.txt","r+w"))==NULL)printf("\n\tThesystemcan'topenthefiles!!");while(flag='y'){seek='n';rewind(fp1);rewind(fp2);while((fread(&pj,sizeof(pj),1,fp1))==1&&(fread(&bus,sizeof(bus),1,fp2))==1&&seek=='n'){if(strcmp(pj.p_area,bus.b_city)==0){seek='y';break;}}if(seek='y'){printf("配件名稱:%s\n",pj.p_name);printf("配件編號:%s\n",pj.p_num);printf("配件顏色:%s\n",pj.p_colour);printf("配件重量:%s\n",pj.p_weight);printf("配件產(chǎn)地:%s\n",pj.p_area);printf("名稱:%s\n",bus.b_name);printf("編號:%s\n",bus.b_num);printf("狀態(tài):%s\n",bus.b_state);printf("銷售商所在城市:%s\n",bus.b_city);}printf("是否接著:");/*提示是否接著修改另一配件信息*/scanf("%c",&flag);}fclose(fp1);fclose(fp2);/*關(guān)閉文件*/}voidseek2(){FILE*fp1,*fp2;structbuildingbuild;structbusinessbus;charflag='y',seek;if((fp1=fopen("c.txt","r+w"))==NULL||(fp2=fopen("e.txt","r+w"))==NULL)printf("\n\tThesystemcan'topenthefiles!!");while(flag='y'){seek='n';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("建筑工地名稱:%s\n",);printf("建筑工地編號:%s\n",build.num);printf("建筑工地所在城市:%s\n",&build.city);printf("名稱:%s\n",bus.b_name);printf("編號:%s\n",bus.b_num);printf("狀態(tài):%s\n",bus.b_state);printf("銷售商所在城市:%s\n",bus.b_city);}printf("是否接著:");/*提示是否接著修改另一配件信息*/scanf("%c",&flag);}fclose(fp1);fclose(fp2);/*關(guān)閉文件*/}(5)主函數(shù)voidmain(){printf("/****************************建筑工地信息管理系統(tǒng)******************************/\n");printf("/*****************************制作:張騰飛*******************************/\n");printf("/*****************************學號:20091004402*******************************/\n");printf("/*****************************班級:052091-

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論