c语言课程设计论文(建筑工地信息管理系统)(编辑修改稿)内容摘要:
fp)。 menu()。 } void delete() { int t,m。 do { puts(\t\t***************MENU*************\n\n)。 puts(\t\t\ new data)。 puts(\t\t\ new data)。 puts(\t\t\ new data)。 /*********删除菜单 ****************/ puts(\t\t\ new data)。 puts(\t\t\)。 puts(\n\n\t\t ********************************\n)。 printf(Choose the number(15):[ ]\b\b)。 scanf(%d,amp。 m)。 if(m1||m5) { t=1。 getchar()。 } else t=0。 } while(t==1)。 switch(m) { case 1:sal_delete()。 break。 case 2:build_delete()。 break。 case 3:pj_delete()。 break。 case 4:SET_delete ()。 break。 case 5:menu()。 } } 44 查找模块 【需求分析】 该模块的功能事根据输入的信息号码查找对应的记录。 选择 合适的 查找方式,输入相应的数据 从而 找出对应的数据。 其 流程图如下 图 5 所示 : 开始返回主菜单输入查找的方式: 1 )项目号; 2 )工地号 ; 3 ) 配件号 ; 4 ) 销售商号文件是否存在。 YY项目是否存在。 输入要删除的项显示查找项目NN 图 5 查找模块流程图 【程序】 /********************************查找模块 ***********************************/ void search() { int i,w=101,j,x,h=0。 FILE *fp。 printf(1By 销售商号码 \n)。 printf(2By 工地号 \n)。 printf(3By 配件号 \n)。 printf(4By 销售商号 \n)。 printf(5 返回 \n\n)。 loop9:printf(请选择项 :\n)。 scanf(%d,amp。 x)。 if(x==5) menu()。 else if(x1||x5) {printf(Error!\n)。 goto loop9。 } else if(x==3) { if((fp=fopen(,rb))==NULL) { printf(Can not open the file!\n)。 menu()。 } printf(Please input the 配件号 :)。 scanf(%d,amp。 i)。 for(j=0。 j100。 j++) {if(fread(amp。 pj[j],sizeof(struct peijian),1,fp)!=1) break。 } h=j+1。 for(j=0。 jh。 j++) if(i==pj[j].num) {w=j。 break。 } if(w==101) printf(Cannot find the data!\n)。 else { printf(配件号 :%d\n,pj[w].num)。 /*输出结构体内的配件号( num) */ printf(配件名 :%s\n,pj[w].name)。 printf(配件颜色 :%s\n,pj[w].color)。 printf(配件重量 :%d\n,pj[w].weight)。 printf(配件产地 :%s\n,pj[w].area)。 printf(\n)。 } fclose(fp)。 menu()。 } else if(x==4) { if((fp=fopen(,rb))==NULL) { printf(Can not open the file!\n)。 menu()。 } printf(请输入销售商号 :)。 scanf(%d,amp。 i)。 for(j=0。 j100。 j++) {if(fread(amp。 sel[j],sizeof(struct seller),1,fp)!=1) break。 } h=j+1。 for(j=0。 jh。 j++) if(i==sel[j].num) {w=j。 break。 } if(w==101) printf(Cannot find the data!\n)。 else { printf(销售商号 :%d\n,sel[w].num)。 printf(销售商名 :%s\n,sel[w].name)。 printf(销售商状态 :%s\n,sel[j].state)。 printf(所在城市 :%s\n,sel[w].city)。 printf(\n)。 } fclose(fp)。 menu()。 } else if(x==2) { if((fp=fopen(,rb))==NULL) { printf(Can not open the file!\n)。 menu()。 } printf(请输入建筑工地号 :)。 scanf(%d,amp。 i)。 for(j=0。 j100。 j++) {if(fread(amp。 build[j],sizeof(struct building),1,fp)!=1) break。 } h=j+1。 for(j=0。 jh。 j++) if(i==build[j].num) {w=j。 break。 } if(w==101) printf(Cannot find the data!\n)。 else { printf(建筑项目号 :%d\n,build[j].num1)。 printf(建筑工地号 :%d\n,build[j].num)。 printf(建筑工地名 :%s\n,build[j].name)。 printf(工地城市 :%s\n,build[j].city)。 printf(\n)。 } fclose(fp)。 menu()。 } else if(x==1) { if((fp=fopen(,rb))==NULL) { printf(Can not open the file!\n)。 menu()。 } printf(请输入销售商号码 :)。 scanf(%d,amp。 i)。 for(j=0。 j100。 j++) {if(fread(amp。 sal[j],sizeof(struct sale),1,fp)!=1) break。 } h=j+1。 for(j=0。 jh。 j++) if(i==sal[j].num1) {w=j。 break。 } if(w==101) printf(Cannot find the data!\n)。 else { printf(销售商号码 :%d\n,sal[j].num1)。 printf(配件号码 :%d\n,sal[j].num2)。 printf(工地号码 :%d\n,sal[j].num3)。 printf(数量 :%d\n,sal[j].num4)。 printf(\n)。 } fclose(fp)。 menu()。 } } 45 配对模块 【需求分析】 该模块的功能是查询与供应商所在城市相同的零件 — 供应商,项目 — 供应商记录对。 输入配对方式(按配件号,按项目号),找出所在城市相同的数据,输出数据。 其流程图如下图 6 所示: 开始输入要配对的方式 : 1 ) 配件号 ;2 )销售商号码; 3 )返回3N结束并返回主菜单文件能否打开显示找到的记录输入要配对的项 图 6 配对模块流程图 【程序】 /********************************配对模块 *******************************/ void search2() { int x,j,i,a=0,b=0。 int w。 FILE *fp1,*fp2。 printf( 配件号 \n)。 printf( 项目 \n)。 printf( \n\n)。 loop:printf(请选择项 :\n)。 scanf(%d,amp。 x)。 if(x==3) menu()。 else if(x1||x3) {printf(Error!)。 goto loop。 } else if(x==1) { if((fp1=fopen(,rb))==NULL||(fp2=fopen(,rb))==NULL) {printf(Cannot open the file!\n\n)。 menu()。 } for(j=0。 j100。 j++) {if(fread(amp。 pj[j],sizeof(struct peijian),1,fp1)!=1) break。 } a=j+1。 for(j=0。 j100。 j++) {if(fread(amp。 sel[j],sizeof(struct seller),1,fp2)!=1) break。 } b=j+1。 printf(已有配件号 :\n)。 for(j=0。 ja1。 j++) printf(%d, ,pj[j].num)。 printf(\nPlease input the 配件号 :)。 scanf(%d,amp。 w)。 for(j=0。 ja。 j++) {if(w==pj[j].num) break。 } for(i=0。 ib。 i++) if(strcmp(pj[j].area,sel[i].city)==0amp。 amp。 strcmp(sel[i].city,sel[99].city)!=0) printf(配件号 :%d 销售商号 :%d 所在城 市 :%s\n,pj[j].num,sel[i].num,sel[i].city)。 fclose(fp1)。 fclose(fp2)。 menu()。 } else if(x==2) { if((fp1=fopen(,rb))==NULL||(fp2=fopen。c语言课程设计论文(建筑工地信息管理系统)(编辑修改稿)
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。