VC++建筑工地信息管理系统
- 格式:doc
- 大小:166.50 KB
- 文档页数:34
建筑工程安全管理信息系统一、引言建筑工程是一个相对复杂且危险的行业,涉及到多个专业、多个工种的协同作业。
为了保障施工过程中的安全,提高工程质量,降低事故发生率,建筑工程安全管理信息系统应运而生。
本文将介绍该系统的设计和实施,以及对建筑工程安全管理的积极影响。
二、系统概述建筑工程安全管理信息系统是以信息技术手段为支撑,通过采集、传输、存储和分析施工现场的各类数据,实现对建筑工程安全管理全过程的监控和控制的一种系统。
其主要包括以下功能模块:安全管理计划制定、施工现场巡检、安全培训与考核、事故报告与分析等。
通过该系统,可以实现对施工过程中各环节的监控和风险评估,及时发现和处理潜在的安全隐患,提高工程施工的安全性。
三、系统设计1. 数据采集与传输建筑工程安全管理信息系统通过传感器、视频监控、巡检人员等多种手段采集施工现场的各种参数和数据,如环境温度、湿度、粉尘浓度、气体含量、施工人员的安全装备、作业时长等。
采集到的数据通过无线传输的方式上传到系统后台进行存储和分析,以便监测施工现场的安全状况。
2. 系统后台管理建筑工程安全管理信息系统的后台管理负责数据的处理、存储和分析。
后台管理模块可以根据施工现场的数据和预设的安全指标,对施工现场的安全情况进行实时监控和评估。
一旦发现安全隐患,系统会自动发出预警,并通知相关人员进行处理。
3. 移动终端应用建筑工程安全管理信息系统还可以通过移动终端实现对施工现场的实时巡检和管理。
工地巡检人员通过手机APP登录系统,根据系统指引进行巡检,记录现场情况并实时上报。
通过移动终端应用,可以实现数据的及时传输和工作流程的更加高效。
四、系统实施建筑工程安全管理信息系统的实施需要经历以下几个步骤:1.需求分析:明确系统所需的功能和性能,根据实际施工情况进行定制化开发。
2.系统设计:包括数据库设计、界面设计、功能模块划分等。
3.系统开发与测试:根据需求设计进行系统开发,并进行测试以确保系统的稳定性和可靠性。
建筑工程项目信息管理系统随着建筑工程项目规模的不断扩大和复杂性的提高,项目信息的管理变得尤为重要。
为了提高建筑工程项目管理的效率和精确性,建筑工程项目信息管理系统应运而生。
本文将介绍建筑工程项目信息管理系统的功能和优势,并讨论其在提升工程管理水平方面的作用。
一、建筑工程项目信息管理系统的功能建筑工程项目信息管理系统是一种利用计算机技术对建筑工程项目信息进行收集、存储、分析和共享的软件系统。
该系统具有以下功能:1. 信息收集和整理:系统通过收集和整理各类与建筑工程项目相关的信息,包括项目计划、预算、设计图纸、施工方案、工期安排等。
这些信息将被自动归档和分类存储,方便工程管理人员随时调取和查阅。
2. 进度管理:系统可以根据项目计划和实际进展情况自动生成进度报表和甘特图,帮助工程管理人员掌握工程进度,及时发现和解决进度延迟的问题。
3. 资源管理:系统可以对项目所需的各类资源进行全面管理,包括人力资源、材料、设备等。
管理人员可以通过系统查看资源的使用情况和剩余量,以便做出科学合理的资源调配决策。
4. 质量管理:系统可以记录和追踪工程项目的质量问题和整改情况。
通过对质量数据的统计和分析,可以及时发现并改进存在的质量问题,提高施工质量。
5. 成本管理:系统可以对项目的预算和实际费用进行对比和分析,帮助管理人员掌握工程项目的成本情况。
同时,系统还可以自动生成成本报表和预警信息,帮助管理人员及时采取措施降低成本。
二、建筑工程项目信息管理系统的优势建筑工程项目信息管理系统具有许多优势,如下所示:1. 提高工作效率:系统可以实现信息的自动化处理和分析,大大减轻了工作人员的工作负担。
同时,通过系统的实时反馈和提醒功能,管理人员可以及时了解工程项目的动态情况,避免信息滞后和疏漏。
2. 提升管理水平:系统可以提供全面、准确的项目数据和报表,帮助管理人员做出科学决策和合理安排。
同时,系统的数据分析功能可以帮助管理人员发现潜在问题和改进机会,提升工程管理的水平。
建筑施工企业管理信息系统操作说明首先是项目管理功能。
用户可以在系统中创建新项目,并填写项目的基本信息,如项目名称、起止时间、项目经理等。
在项目详情页面,用户可以查看项目进展情况、任务分配情况以及项目成本预算等相关信息。
用户还可以向项目中添加新的任务,分配给相应的员工,并设置任务的优先级和截止日期。
项目经理可以通过系统对项目进展进行监控和管理,并随时与相关人员进行沟通和协作。
其次是人力资源管理功能。
用户可以在系统中录入员工的基本信息,包括姓名、工号、职位等。
用户可以将员工分配到不同的项目、部门或岗位,并设置他们的工作时间和考勤规则。
在系统中,用户可以追踪员工的考勤情况、加班情况以及请假情况,并生成相应的报表和统计数据。
用户还可以通过系统对员工的绩效进行评估和管理,并根据结果进行奖惩和晋升。
接下来是供应链管理功能。
用户可以在系统中录入供应商的信息,并与供应商建立合作关系。
在项目进展过程中,用户可以根据项目需求,发起采购请求并向供应商下达采购订单。
用户可以随时查看采购进度,跟踪采购订单的到货情况,并进行货物验收和入库管理。
系统还能生成供应商绩效评估报告,帮助用户选择最合适的合作伙伴。
最后是财务管理功能。
用户可以在系统中录入项目的成本预算和实际支出情况,并对其进行比较分析。
系统能够自动生成财务报表,如项目成本明细表、利润表和现金流量表等。
用户还可以在系统中录入公司的收入和支出情况,并进行日常的账务处理,如凭证录入和报销审批。
系统还提供了预算控制和成本监控功能,以便用户监控项目的财务情况,及时采取措施保持项目的盈利。
综上所述,建筑施工企业管理信息系统是一个全面的项目管理工具,可以帮助企业实现项目的高效执行和绩效管理。
通过使用该系统,用户能够更好地掌握项目的进展情况、优化资源的分配、提高供应链的效率,并及时监控和管理项目的财务情况。
建筑工程管理信息系统建筑工程管理信息系统是指利用计算机技术和信息管理技术,对建筑工程项目进行管理和监控的系统。
它通过信息化手段,提高建筑工程项目的管理效率、降低成本、提升质量,是现代建筑工程管理的重要工具。
一、建筑工程管理信息系统的特点建筑工程管理信息系统具有以下几个特点:1. 综合性:建筑工程管理信息系统可以整合建筑工程项目的各个环节,包括设计、施工、材料采购、工程验收等,实现全方位、全过程的管理。
2. 数据化:建筑工程管理信息系统可以将建筑工程项目的各种数据进行集中存储和管理,实现数据共享和实时更新。
3. 自动化:建筑工程管理信息系统可以实现很多管理工作的自动化,减少人力资源的浪费,提高工作效率。
4. 集约化:建筑工程管理信息系统可以将各个管理环节集成在一起,减少数据冗余,提高信息利用率。
5. 实时性:建筑工程管理信息系统可以实现对建筑工程项目的实时监控和分析,及时发现和解决问题,保证工程项目的顺利进行。
二、建筑工程管理信息系统的应用建筑工程管理信息系统在建筑工程项目管理中有着广泛的应用,主要包括以下几个方面:1. 进度管理:建筑工程管理信息系统可以对工程项目的施工进度进行动态监控和调整,保证工程项目按时完成。
2. 质量管理:建筑工程管理信息系统可以对工程项目的质量进行全面监控,及时发现并处理质量问题,确保工程质量达标。
3. 成本管理:建筑工程管理信息系统可以对工程项目的预算和实际成本进行比对分析,帮助项目经理进行成本控制,降低建筑工程项目的成本。
4. 安全管理:建筑工程管理信息系统可以对工程项目的安全状况进行监测和评估,提高施工现场的安全标准,保障工人的生命安全。
5. 文档管理:建筑工程管理信息系统可以对建筑工程项目的各类文档进行管理和存档,实现文档的数字化、归档,方便查阅和管理。
三、建筑工程管理信息系统的优势建筑工程管理信息系统具有如下优势:1. 提高管理效率:建筑工程管理信息系统可以减少人力资源的浪费,提高管理效率,降低管理成本。
建筑工程管理信息系统建筑工程管理是一个复杂而庞大的过程,涉及到多个方面的协调与监控。
为了更好地提高建筑工程管理的效率和精确度,建筑工程管理信息系统应运而生。
本文将从系统的定义、功能、优势以及应用案例等方面进行探讨,以期更好地理解建筑工程管理信息系统的重要性和价值。
一、系统定义建筑工程管理信息系统是指通过计算机技术与信息管理手段相结合,建立起一套能够对建筑工程进行全过程管理与控制的信息系统。
这个系统可以帮助工程管理人员更好地跟踪、协调和监控工程项目的各个环节,提高工程质量、节约资源以及控制成本。
二、系统功能建筑工程管理信息系统的功能主要包括:1. 计划管理:系统可以帮助工程管理人员制定科学合理的工程计划,包括工期安排、资源分配等,减少工程延误和浪费;2. 进度跟踪:系统可以实时监控工程进度,及时发现和解决工程中的延迟和问题,确保工程按时完成;3. 资源管理:系统可以对人力、物资等资源进行有效管理和调配,确保工程所需资源的及时供给;4. 质量控制:系统可以建立质量管理体系,实施全过程质量控制和监督,减少施工质量问题;5. 成本控制:系统可以实时监控工程成本,进行费用核算和预警,帮助管理人员控制工程成本;6. 文档管理:系统可以对各种工程文件、合同、资料进行集中管理与存档,方便查阅和管理。
三、系统优势建筑工程管理信息系统相比传统的人工管理具有以下优势:1. 提高管理效率:系统的自动化和集成化特点可以大大提高管理效率,减少人为因素的干扰和错误;2. 提升管理精度:系统可以实时监控各个环节的数据变化,提供精确的数据支持,减少管理中的偏差和误差;3. 优化资源配置:系统可以根据实时数据分析和判断,帮助管理人员更好地进行资源调配和优化,提高资源利用率;4. 加强信息共享:系统可以实现多部门、多人员之间的信息共享和协同工作,加强沟通与协作,减少信息传递和理解上的失误;5. 提升决策水平:系统提供可视化的数据展示和分析功能,可以帮助管理人员更准确、快速地做出决策。
建筑工程施工管理信息系统建筑工程的顺利进行和高效管理对于工程项目的成功完成至关重要。
然而,传统的手动管理方式已经无法满足日益复杂和庞大的建筑工程项目的需求。
为了更好地管理施工过程中的各项任务和资源,建筑工程施工管理信息系统应运而生。
一、信息系统的介绍建筑工程施工管理信息系统是基于计算机和网络技术的工具,旨在实现对建筑工程项目的全面管理和控制。
该系统通过集成施工工艺流程、施工计划、人员资源、材料管理、质量控制、安全管理等方面的数据和功能,为项目管理者提供全面的决策支持和追踪管理。
二、信息系统的功能1. 施工工艺流程管理:信息系统将施工工艺流程进行规范化和标准化管理,将每个施工阶段的具体任务和工作流程明确记录并追踪,确保施工按照计划有序进行。
2. 施工计划管理:信息系统可以将项目时间计划、资源分配和任务分解等细节进行可视化和动态管理,项目管理者可以通过系统对进度进行实时监控和调整,及时发现并解决潜在的延迟问题。
3. 人员资源管理:信息系统可以对施工人员进行管理,包括人员的资质信息、工作经验、工时统计等,系统可以根据项目需求提供人员的合理分配和调度,确保施工期间有足够的人力资源支持。
4. 材料管理:信息系统可以对施工所需材料进行统一管理,包括材料的采购、库存、使用记录等,系统可以提供材料的及时补充和消耗情况的掌握,避免因材料不足造成的施工延误。
5. 质量控制:信息系统可以将质量管理的各项指标进行量化和评估,并将结果实时反馈给项目管理者,系统可以对施工过程中的质量问题进行记录和整改跟踪,确保项目质量得到有效控制。
6. 安全管理:信息系统可以建立安全事故的管理数据库,记录和分析事故发生的原因和过程,并提供相应的预警和纠正措施,系统可以帮助项目管理者制定和执行有效的安全管理措施,保障工程施工过程的安全性。
三、信息系统的优势1. 效率提升:建筑工程施工管理信息系统通过自动化和集成化的手段,提高了施工管理的效率,减少了工时和不必要的人力投入。
建筑工程信息系统
建筑工程信息系统是一种全面的信息管理平台,旨在帮助建筑工程项目的各个参与方实现有效的沟通和协作。
该系统提供了多种功能和工具,包括项目管理、进度控制、质量管理、材料采购、人员管理等,以满足不同阶段和需求的项目管理。
该系统的项目管理功能使项目团队能够创建和管理项目计划、任务分配和资源调度。
通过实时跟踪任务的执行进度和资源使用情况,项目经理可以快速发现和解决问题,确保项目按时完成。
进度控制功能提供了项目进度的可视化展示和监控工具。
通过图表和报表的形式,项目团队可以清楚地了解项目的整体进展情况,及时调整计划并做出决策,以确保项目顺利进行。
质量管理功能帮助项目团队建立和执行质量控制措施,确保项目交付的建筑物符合相关质量标准和要求。
该功能包括检查和审核流程,可以快速发现并解决质量问题,提高建筑质量。
材料采购功能使项目团队能够管理和跟踪项目所需的各种材料和设备的采购过程。
通过统一的供应商管理和采购流程,可以降低采购成本并确保材料的及时供应。
人员管理功能帮助项目团队有效地管理和调度项目参与人员的工作。
通过集中管理人员信息、工作安排和考勤记录等,可以提高人员利用效率和工作效率。
综上所述,建筑工程信息系统可为建筑工程项目提供全面、高效的信息管理支持,帮助项目团队实现顺利完成项目的目标。
C语言课程设计说明书建筑工地管理系统建筑工地信息管理系统一.题目要求《建筑工地信息管理系统》要求要建立与建筑相关的四个文件信息:1)项目2)工地3)配件 4)商家;建立文件以后,根据项目、工地或商家完成各项工作的追加、删除、修改和更新查询操作。
二.需求分析要求整个系统设计为建筑工地的信息输入、追加、删除、修改、浏览、查询模块。
三.总体设计如示意图:四.详细设计1.主函数main(){system("color 070");system("cls");menu();}2.菜单menu(){int n,w1;do{system("cls");puts("\n\t\t********************MENU********************\n");puts("\t\t 建筑工地信息系统 \n\n");puts("\t\t\t\t1.输入数据");puts("\t\t\t\t2.添加数据");puts("\t\t\t\t3.删除数据");puts("\t\t\t\t4.更改数据");puts("\t\t\t\t5.插入数据");puts("\t\t\t\t6.显示所有信息");puts("\t\t\t\t7.显示项目信息");puts("\t\t\t\t8.显示工地信息");puts("\t\t\t\t9.显示配件信息");puts("\t\t\t\t10.显示销售商信息");puts("\t\t\t\t11.查找数据");puts("\t\t\t\t12.退出");puts("\n\n\t\t*******************************************\n");printf("选择项目(1-12):[ ]\b\b\b");scanf("%d",&n);if(n<1||n>12){w1=1;getchar();}else w1=0;}while(w1==1);switch(n){case 1:enter();break;case 2:add();break;case 3:del();break;case 4:modify();break;case 5:insert();break;case 6:browse();break;case 7:browse_project();break;case 8:browse_site();break;case 9:browse_outfit();break;case 10:browse_sale();break;case 11:search();break;case 12:exit(0);}}3.各功能模块设计(1)输入模块//整个系统数据结构:struct project{char site_num[10];char site_name[20];char site_city[20];char outfit_num[10];char outfit_name[20];char outfit_color[10];char outfit_place[20];char sale_num[10];char sale_name[20];char sale_state[10];char sale_city[20];int outfit_n;}pro[N];注意:pro[N]中的N为项目数量,本程序宏定义#define N 50(1)//输入模块void enter(){int i,n;printf("你需要输入几组数据(0-%d)?:",N-1);scanf("%d",&n);printf("\n现在输入数据\n\n");for(i=0;i<n;i++){printf("\n请输入第%d个数据.\n",i+1);input(i);}if(i!=0){save(n);save_project(n);save_site(n);save_outfit(n);save_sale(n);}printf_back();system("PAUSE");}(2)追加模块[流程图]//int add(){int i,n,m,k;FILE *fp;n=load();printf("你想增加多少个数据(0-%d)?:",N-1-n);scanf("%d",&m);k=m+n;for(i=n;i<k;i++){printf("\n 增加第%d个工程记录.\n",i-n+1);input(i);}for(i=n;i<k;i++){if((fp=fopen("main.txt","ab"))==NULL)printf("不能打开文件\n");if(fwrite(&pro[i],sizeof(struct project),1,fp)!=1)printf("文件写入错误\n");fclose(fp);if((fp=fopen("project.txt","ab"))==NULL){printf("\n不能打开文件\n");return NULL;} fprintf(fp,"%s,%s,%s,%d",pro[i].sale_num,pro[i].outfit_num, pro[i].site_num,pro[i].outfit_n);fclose(fp);if((fp=fopen("site.txt","ab"))==NULL){printf("\n不能打开文件\n");return NULL;}fprintf(fp,"%s,%s,%s",pro[i].site_num,pro[i].site_name,pro[i].site_city);fclose(fp);if((fp=fopen("outfit.txt","ab"))==NULL){printf("\n不能打开文件\n");return NULL;}fprintf(fp,"%s,%s,%s,%s,%d",pro[i].outfit_num,pro[i].outfit_name,pro[i].outfit_color,pro[i].outfit_place,pro[i].outfit_n);fclose(fp);if((fp=fopen("sale.txt","ab"))==NULL){printf("\n不能打开文件\n");return NULL;}fprintf(fp,"%s,%s,%s,%s",pro[i].sale_num,pro[i].sale_name,pro[i].sale_state,pro[i].sale_city);fclose(fp);}printf_back();system("PAUSE");return 0;}(3)删除模块//删除模块程序void del(){struct project p;//FILE *fp;int i,n,w1,w2,j;n=load();do{printf_face();for(i=0;i<n;i++)printf_one(i);do{printf("\n\n需要删除那个?要输入什么?\n\t1).工地号 2)工件号 3)销售商号 4)工件数量 5)返回\n");printf("请选择:(1-5):[ ]\b\b\b");scanf("%d",&w2);switch(w2){case 1:printf("工地号:");scanf("%s",&p.site_num);break;case 2:printf("工件号:");scanf("%s",&p.outfit_num);break;case 3:printf("销售商号:");scanf("%s",&p.sale_num);break;case 4:printf("工件数量:");scanf("%s",&p.outfit_n);break;case 5:menu();}for(i=0;i<n;i++)for(j=i;j<n;j++)if((strcmp(p.site_num,pro[i].site_num)||strcmp(p.outfit_num,pro[i].outfit_num)||strcmp(p.sal e_num,pro[i].sale_num))==0||p.outfit_n==pro[i].outfit_n){pro[i]=pro[j];printf("第%d个记录被删除!\n",i-1);n--;save(n);printf_face();printf_one(i-1);}}while(j<n);printf("要删除其它吗???\n\t1)是 2)返回",i);printf("\t\n请选择:(1-2):[ ]\b\b");scanf("%d",&w1);}while(w1==1);printf_back();system("PAUSE");}(4)修改模块//void modify(){struct project p;//FILE *fp;int i,n,k,w0=1,w1,w2=0;n=load();do{k=-1;printf_face();for(i=0;i<n;i++)if((i!=0)&&(i%10==0)){printf("\n\n没有找到更改的数据.按任意键继续");getch();puts("\n\n");}printf_one(i);}do{printf("\n\n输入你想修改的销售商号! 销售商号:");scanf("%s",p.sale_num);for(i=0;i<n;i++)if(strcmp(p.sale_num,pro[i].sale_num)==0){k=i;p=pro[i];}if(k==-1) printf("\n\n返回!重试");}while(k==-1);printf_face();printf_one(k);w1=modify_data(k,n);if(w1=1){printf("\n成功 ^-^.\n\n需要更改另外一个吗?\n\t1)需要 2)返回保存\t");printf("\n请选择:(1-2):[ ]\b\b");scanf("%d",&w0);w2=1;}else{w0=0;if(w2==1)pro[k]=p;}if(w0!=1&&w2==1)save(n);}while(w0==1);menu();}(5)插入模块//插入模块void insert(){int i,j,n,c;struct project p;n=load();puts("\n请输入一个数据.\n");do{input(n);printf_face();printf_one(n);printf("\n\n确定?\n\n\t1).确定 \t2).取消再试\t3).返回不保存\n");printf("请选择:(1-3):[ ]\b\b\b");scanf("%d",&c);if(c==1)for(i=0;i<n;i++)for(j=i;j<n+1;j++)if(pro[j].outfit_n<pro[j+1].outfit_n){p=pro[j];pro[j]=pro[j+1];pro[j+1]=p;}save(n+1);printf_back();}else if(c!=2)menu();}while(c==2);}(6)浏览模块//所有项目显示模块void browse(){int i,n;n=load();printf_face();for(i=0;i<n;i++){if(i!=0&&i%10==0){printf("\n\n按任意键继续");getch();puts("\n\n");}printf_one(i);}printf("\t\n有%d个的记录.\n",n);printf("\n按任意键返回");getch();menu();}//销售商-配件-建筑工地浏览模块void browse(){int i,n;n=load();printf_face();for(i=0;i<n;i++){if(i!=0&&i%10==0){printf("\n\n按任意键继续");getch();puts("\n\n");}printf_one(i);}printf("\t\n有%d个的记录.\n",n);printf("\n按任意键返回");getch();menu();}//建筑工地浏览模块void browse_site(){int i,n;n=load();printf_site1();for(i=0;i<n;i++){if(i!=0&&i%10==0){printf("\n\n按任意键继续");getch();puts("\n\n");}printf_site(i);}printf("\t\n有%d个的记录.\n",n);printf("\n按任意键返回");getch();menu();}//配件浏览模块void browse_outfit(){int i,n;n=load();printf_outfit1();for(i=0;i<n;i++){if(i!=0&&i%10==0){printf("\n\n按任意键继续");getch();puts("\n\n");}printf_outfit(i);}printf("\t\n有第%d个记录.\n",n);printf("\n按任意键返回");getch();menu();}//销售商浏览模块void browse_sale(){int i,n;n=load();printf_sale1();for(i=0;i<n;i++){if(i!=0&&i%10==0){printf("\n\n按任意键继续");getch();puts("\n\n");}printf_sale(i);}printf("\t\n有%d个的记录.\n",n);printf("\n按任意键返回");getch();menu();}(7)查找模块void search(){int i,n,k,w1=1,w2,w3,w4,w5;struct project p;n=load();do{ system("cls");do{k=-1;printf_face();for(i=0;i<n;i++)printf_one(i);printf("\n\n你要输入什么号?\n\t1)销售商所在城市 2).工地所在城市 3)返回\n");printf("请选择:(1-3):[ ]\b\b\b");scanf("%d",&w5);switch(w5){case 1:printf("销售商所在城市:");scanf("%s",p.sale_city);break;case 2:printf("工地所在城市:");scanf("%s",p.site_city);break;case 3:menu();}for(i=0;i<n;i++)if((strcmp(p.site_city,pro[i].site_city)&&strcmp(p.sale_city,pro[i].sale_city))==0){k=i;printf_one(k);}if(k==-1){printf("\n\n没有数据!");printf("\n\n是否重试?\n\t1).是 2)不\n");printf("请选择:(1-2):[ ]\b\b");scanf("%d",&w1);if(w1==2)break;}}while(k==-1&&w1==1);w4=0;w3=0;if(k!=-1){printf("\n\n请选择 \n\t1).继续查找 2).修改 3).删除 4).返回菜单\n");printf("请选择:(1-4):[ ]\b\b\b");scanf("%d",&w2);switch(w2){case 2:w3=modify_data(k,n);break;case 3:{printf("\n请选择\n\t1).是 2).不,返回");scanf("%d",&w4); }}if(w3==1||w4==1){save(n);printf("\n\n成功. ^-^.");printf("\n\n请选择\n\t1).继续查找 2).返回\n");printf("请选择:");scanf("%d",&w2);}}}while(w2==1);menu();}4.公共函数//保存整个系统数据int save(int n){FILE *fp;int i;if((fp=fopen("main.txt","wb"))==NULL){printf("\n不能打开文件\n");return NULL;}for(i=0;i<n;i++)if(fwrite(&pro[i],sizeof(struct project),1,fp)!=1)printf("文件写入错误\n");fclose(fp);return 0;}//保存主项目int save_project(int n){FILE *fp;int i;if((fp=fopen("project.txt","wb"))==NULL){printf("\n不能打开文件\n");return NULL;}for(i=0;i<n;i++)fprintf(fp,"%s,%s,%s,%d",pro[i].sale_num,pro[i].outfit_num,pro[i].site_num,pro[i].outfit_n);fclose(fp);return 0;}//保存建筑工地信息int save_site(int n){FILE *fp;int i;if((fp=fopen("site.txt","wb"))==NULL){printf("\n不能打开文件\n");return NULL;}for(i=0;i<n;i++)fprintf(fp,"%s,%s,%s",pro[i].site_num,pro[i].site_name,pro[i].site_city);fclose(fp);return 0;}//保存配件信息int save_outfit(int n){FILE *fp;int i;if((fp=fopen("outfit.txt","wb"))==NULL){printf("\n不能打开文件\n");return NULL;}for(i=0;i<n;i++)fprintf(fp,"%s,%s,%s,%s,%d",pro[i].outfit_num,pro[i].outfit_name,pro[i].outfit_color,pro[i].outfit_place, pro[i].outfit_n);fclose(fp);return 0;}//保存销售商信息int save_sale(int n){FILE *fp;int i;if((fp=fopen("sale.txt","wb"))==NULL){printf("\n不能打开文件\n");return NULL;}for(i=0;i<n;i++)fprintf(fp,"%s,%s,%s,%s",pro[i].sale_num,pro[i].sale_name,pro[i].sale_state,pro[i].sale_city );fclose(fp);return 0;}//加载文件int load(){FILE *fp;int i;if((fp=fopen("main.txt","rb"))==NULL){printf("\n不能打开文件\n");return NULL;}for(i=0;!feof(fp);i++)fread(&pro[i],sizeof(struct project),1,fp);fclose(fp);return(i-1);}//文件输入-完成字符串类型输入void char_input(int i){int j=1,k,w1,n=12;do{w1=0;for(j=1;j<12;j++){switch(j){case 1:printf("工地号:");scanf("%s",&pro[i].site_num);break;case 2:printf("工地名:");scanf("%s",&pro[i].site_name);break;case 3:printf("工地所在城市:");scanf("%s",&pro[i].site_city);break;case 4:printf("工件号:");scanf("%s",&pro[i].outfit_num);break;case 5:printf("工件名:");scanf("%s",&pro[i].outfit_name);break;case 6:printf("工件颜色:");scanf("%s",&pro[i].outfit_color);break;case 7:printf("工件出产地:");scanf("%s",&pro[i].outfit_place);break;case 8:printf("销售商号:");scanf("%s",&pro[i].sale_num);break;case 9:printf("销售商名:");scanf("%s",&pro[i].sale_name);break;case 10:printf("销售商状态:");scanf("%s",&pro[i].sale_state);break;case 11:printf("销售商所在城市:");scanf("%s",&pro[i].sale_city);break;}}if(!pro){puts("输入错误!请选择(0-9).请重试!\n");w1=1;break;}if(w1!=1)for(k=0;k<n;k++)if(k!=i&&strcmp(pro[k].site_num,pro[i].site_num)&&strcmp(pro[k].sale_num,pro[i].sale_num)==0 ){puts("没有记录.请重新输入!\n");w1=1;break;}}while(w1==1);}//文件输入-完成整形输入void input(int i){char_input(i);printf("工件数量:");scanf("%d",&pro[i].outfit_n);}//文件修改int modify_data(int i,int n){int c,w1;do{ system("cls");p uts("\n修改通过=>\n\n 1).工地号 2).工地名 3).工地所在城市 4).配件数5).输出配件的名子\n 6).输出配件的颜色 7).输出配件的产地 8).销售商号码 9).销售商的名字 10).销售商的状态\n11).销售商所在地 12).工件数量 13).返回");printf("请选择:(1-13):[ ]\b\b\b");scanf("%d",&c);if(c>13||c<1){puts("\n选择错误!请再选择!");getchar();}}while(c>13||c<1);do{switch(c){case 1:printf("工地号:");scanf("%s",&pro[i].site_num);break;case 2:printf("工地名:");scanf("%s",&pro[i].site_name);break;case 3:printf("工地所在城市:");scanf("%s",&pro[i].site_city);break;case 4:printf("工件号:");scanf("%s",&pro[i].outfit_num);break;case 5:printf("工件名:");scanf("%s",&pro[i].outfit_name);break;case 6:printf("工件颜色:");scanf("%s",&pro[i].outfit_color);break;case 7:printf("工件出产地:");scanf("%s",&pro[i].outfit_place);break;case 8:printf("销售商号:");scanf("%s",&pro[i].sale_num);break;case 9:printf("销售商名:");scanf("%s",&pro[i].sale_name);break;case 10:printf("销售商状态:");scanf("%s",&pro[i].sale_state);break;case 11:printf("销售商所在城市:");scanf("%s",&pro[i].sale_city);break;case 12:printf("工件数量:");scanf("%d",&pro[i].outfit_n);break;case 13:menu();}puts("\n现在:\n");printf_face();printf_one(i);printf("\n确定?\n\t1).确定 2).不确定并修改 3).返回不保存\n");printf("请选择:(1-3):[ ]\b\b");scanf("%d",&w1);}while(w1==2);return(w1);}//显示主文件结构void printf_face(){puts("\n\t********************建筑工地项目信息************************");puts("\n\t*************************************************************");printf("\t 建筑工地号建筑工地名建筑工地所在城市");printf("\n\tn配件数配件名称配件颜色配件出产地");printf("\n\t 销售商号销售商名称销售商状态销售商所在城市工件数量");puts("\n\t*************************************************************");}//显示项目文件结构void printf_project1(){printf("\t-----------------------项目信息-------------------\n ");printf("\n \t销售商号码*******配件号*******工地号******配件数目\n ");puts(" -------------------------------------------------");}//显示建筑工地文件结构printf_site1(){printf("\t-----------工地信息-------------\n");printf("\n\t工地号*******名称*******所在地方\n");puts(" --------------------------------");}//显示配件文件结构printf_outfit1(){printf("\n\t -------------------------配件信息--------------------\n");printf("\n\t 配件号码*******名称********颜色*******产地*******数量\n");puts(" ------------------------------------------------------");}//显示销售商文件结构printf_sale1(){printf("\n\t-------------------商家信息----------------\n");printf("\n\t生产商号*******名称*******状态*******城市\n");puts(" -------------------------------------------");}//显示主文件数据printf_one(int i){printf("\t%6s%13s%14s",pro[i].site_num,pro[i].site_name,pro[i].site_city);printf("\n\t%6s%13s%14s%14s",pro[i].outfit_num,pro[i].outfit_name,pro[i].outfit_color,pro[i].outfit_place);printf("\n\t%6s%13s%14s%14s%10d",pro[i].sale_num,pro[i].sale_name,pro[i].sale_state,pro[i].sale_city,pro[i].outfit_n);puts("\n\t-------------------------------------------------------------");}//显示主项目数据printf_project(int i){printf("%14s%15s%13s%15d",pro[i].site_num,pro[i].outfit_num,pro[i].sale_num,pro[i].outfit_n);puts("\n -------------------------------------------------");}//显示建筑工地文件数据printf_site(int i){printf("%13s%11s%13s",pro[i].site_num,pro[i].site_name,pro[i].site_city);puts("\n --------------------------------");}//显示配件文件数据printf_outfit(int i){printf("%15s%13s%12s%11s%12d",pro[i].outfit_num,pro[i].outfit_name,pro[i].outfit_color,pro[i].outfit_place,pro[i].outfit_n);puts("\n ------------------------------------------------------");}//显示销售商文件数据printf_sale(int i){printf("%12s%14s%11s%11s",pro[i].sale_num,pro[i].sale_name,pro[i].sale_state,pro[i].sale_city);puts("\n --------------------------------------------");}//返回到主函数void printf_back(){int w;printf("\n\n\t成功.^-^\n\n");printf("请选择\n\t1).c查看所有\t2).返回");printf("\n请选择:(1-2):[ ]\b\b");scanf("%d",&w);if(w==1) browse();else menu();}.五、上机操作1.数据源根据输入格式,如如一组数据2.编译、连接、运行3.运行结果如图:(1)主菜单函数(2)输入函数(输入两个记录)输入两条记录后,如图:(3)追加模块(4)删除模块删除后结果:(4)修改模块修改后结果:(5)浏览结果:(7)查找结果退出:六、实习心得这次实习是第一次上机实习,没有经验,一切从零开始,不过通过对相关例题得编写过程中,帐务了许多方法,也逐渐明白了结构化程序设计的原理。
目录课程设计评语.................................................................................................... 错误!未定义书签。
目录 (1)1.课程论文题目................................................................................................. 错误!未定义书签。
2.程序设计思路................................................................................................. 错误!未定义书签。
3.功能模块图..................................................................................................... 错误!未定义书签。
4.程序代码 (4)5.程序运行结果 (24)6.编程中遇到的困难及解决方法.................................................................. 2错误!未定义书签。
7.总结心得及良好建议 (28)8.致谢 ............................................................................................................. 2错误!未定义书签。
9.参考文献...................................................................................................... 2错误!未定义书签。
土建施工中的信息化管理系统在现代建筑行业,信息化管理系统正逐渐成为提升土建施工效率和质量的重要手段。
随着科技的发展,传统的施工方式面临着越来越多的挑战,信息化的引入为施工管理带来了新的视角与工具。
信息化管理系统的核心功能之一是数据的集中处理和分析。
在土建施工过程中,涉及到的数据信息繁杂,包括设计图纸、材料清单、施工进度、人员安排等。
信息化系统通过高效的数据处理,可以将这些信息整合在一起,使得管理者能够实时监控施工的各个环节,及时发现潜在问题并进行调整。
这种集中式的管理能够有效减少信息孤岛现象,提升团队之间的协作效率。
在施工现场,信息化管理系统还能够支持移动应用。
工人和管理者可以通过手机或平板实时获取施工信息,甚至可以在现场直接更新数据。
这种方式不仅提高了信息流动的效率,还能在一定程度上减少纸质文件的使用,符合绿色施工的理念。
移动应用还能够通过定位服务,追踪材料和设备的位置,确保施工中的各项资源得到合理配置。
另外,项目的进度管理也是信息化系统的重要功能之一。
在传统施工中,进度的跟踪往往依赖于人工记录,这容易出现疏漏与错误。
信息化管理系统通过动态进度计划和可视化工具,能够提供更精确的施工进度控制。
管理者能够清楚看到当前的施工状态及与计划的差距,快速进行调整,确保项目在预定时间内完成。
成本控制是每个施工项目都无法忽视的环节。
信息化管理系统在成本管理方面的卓越表现,使得土建施工过程中的资金流动更加明晰。
通过对材料、人工、设备等各项费用的实时记录与统计,管理者能够快速评估施工的经济效益,并采取相应措施控制成本。
这种实时的决策支持,不仅避免了因财务信息滞后带来的损失,也为施工企业的利润提升提供了保障。
数据分析与报告生成也是信息化系统不可或缺的功能。
通过对历史数据的积累与分析,管理层能够发现项目中的规律与趋势,进而为后续的项目提供有价值的建议。
系统生成的各类报告可以为项目的有效评估提供帮助,促进经验的总结与知识的传承。
建筑工地安全管理信息系统设计摘要:建筑工地是一个高风险的工作环境,因此建立一个有效的安全管理信息系统对于保障工人的生命财产安全至关重要。
本文将对建筑工地安全管理信息系统进行设计,并介绍该系统的功能、架构和实施要点。
1. 系统功能建筑工地安全管理信息系统的主要功能包括风险评估、事故报告、设备管理、培训记录和紧急预警等。
1.1 风险评估该功能旨在识别和评估工地上存在的潜在安全风险,并采取相应的措施进行管理和控制。
系统可以根据工作环境、工种等因素,生成风险评估报告,提供给工地管理人员和工人参考。
1.2 事故报告当发生事故时,系统可以记录并生成事故报告。
报告应包含事故发生地点、时间、经过、原因和受伤程度等详细信息,以便进行事故调查和改进工地安全措施。
1.3 设备管理该功能用于管理工地上的各种设备,包括机械设备、工具和防护装备等。
系统可以实时监测设备的状态,提醒工地管理人员及时采取维修和更换措施,确保设备的正常运行和工人的安全使用。
1.4 培训记录系统可以记录工人参加的安全培训和考核情况。
管理人员可以通过系统了解工人的培训情况,并根据需要进行进一步的培训和指导。
1.5 紧急预警系统具备紧急预警功能,当出现可疑情况或紧急事态时,可以及时向相关人员发送警报或通知,以便进行紧急处理和救援。
2. 系统架构建筑工地安全管理信息系统采用客户端/服务器架构。
客户端为工地管理人员和工人提供各种功能模块的访问界面,服务器负责数据的存储和处理。
2.1 客户端客户端界面应简洁明了、用户友好,提供相应的功能模块入口。
工地管理人员可以登录系统管理模块,进行风险评估、设备管理和事故报告等操作。
工人可以登录系统查看培训记录和接收紧急预警信息。
2.2 服务器服务器应具备强大的数据存储和处理能力,确保系统的高可靠性和稳定性。
服务器采用分布式架构,实现数据的备份和集中管理。
3. 实施要点在建立建筑工地安全管理信息系统时,需要考虑以下几个实施要点。
建筑工程施工现场信息管理系统的设计与应用随着社会的发展和科技的进步,建筑工程施工现场的管理变得越来越重要。
传统的施工现场管理方式往往存在信息不对称、效率低下等问题,严重影响了施工进度和质量。
为了解决这些问题,建筑工程施工现场信息管理系统应运而生。
一、信息管理系统的设计建筑工程施工现场信息管理系统的设计需要考虑多个方面的因素。
首先,系统应具备实时监控和数据采集的功能,能够及时获取施工现场的各项数据。
其次,系统应支持多种数据格式的输入和输出,以便与其他管理系统进行数据交互。
此外,系统还应具备数据分析和决策支持的功能,能够根据不同的数据指标进行分析和预测,为管理者提供决策依据。
在设计过程中,需要考虑系统的可扩展性和灵活性。
建筑工程施工现场的管理需要考虑到各种因素,如人员、设备、材料等,因此系统应支持根据实际情况进行调整和扩展。
此外,系统还应具备友好的用户界面和易于操作的功能,以便施工人员能够方便地使用系统。
二、信息管理系统的应用建筑工程施工现场信息管理系统的应用可以从多个角度进行考虑。
首先,系统可以用于施工进度的管理。
通过系统的实时监控功能,管理者可以及时了解施工进度的情况,并根据实际情况进行调整。
此外,系统还可以通过数据分析和预测功能,提供施工进度的预测结果,为管理者提供决策依据。
其次,系统可以用于施工质量的管理。
通过系统的数据采集功能,可以记录施工现场的各项数据,如施工材料的使用情况、施工人员的操作记录等。
通过数据分析和比对,可以及时发现施工质量的问题,并采取相应的措施进行改进。
此外,系统还可以用于施工安全的管理。
通过系统的实时监控功能,可以及时了解施工现场的安全情况,并采取相应的措施进行预防。
通过数据分析和决策支持功能,可以提供施工安全的预测结果,为管理者提供决策依据。
三、信息管理系统的优势和挑战建筑工程施工现场信息管理系统的设计和应用具有许多优势。
首先,系统可以提高施工现场的管理效率。
通过实时监控和数据采集功能,可以及时获取施工现场的各项数据,减少了人工收集数据的时间和成本。
建设工程信息管理系统资料一、引言建设工程信息管理系统是集成现代信息技术和电子商务技术的综合应用系统,具有科学性、现代性和实用性,可以为建设工程管理者提供有效的决策支持和业务管理手段。
在建设工程信息化的过程中,建设工程信息管理系统是不可或缺的一环,它不仅可以提高建设工程的管理效率,降低建设成本,而且还可以优化资源配置,提升企业竞争力。
本文将就建设工程信息管理系统的相关内容进行阐述。
二、管理系统的定义管理系统是一种将各种资源进行整合,以保证生产和经营活动取得更好效果的系统。
目前,各种行业和领域几乎都使用了各种管理系统以提高效率、优化资源分配和达成目标。
三、建设工程信息管理系统的必要性在建设工程的整个过程中,包含了大量信息和数据,而这些信息和数据的采集和处理通常都需要花费大量的时间和人力,同时,由于数据来源和质量的不同,还会出现大量的信息不一致和错误等问题。
而建设工程信息管理系统的出现,可以将所有数据整合起来,通过有效的管理和维护,可以快速地获取准确的数据,为工程管理者提供有效决策支持和业务管理手段。
四、建设工程信息管理系统的功能建设工程信息管理系统的功能主要分为以下三个方面:1. 信息管理建设工程信息管理系统可以将所需的各种信息的来源,分布和使用进行有效的管理。
通过对各类数据进行归档和分类,可以方便地快速获取所需的信息,同时避免了由于人为因素所导致的数据错误和信息不一致等问题。
2. 决策支持建设工程信息管理系统还可以为工程管理者提供有效的决策支持和业务管理手段。
通过数据的分析和统计,可以为管理者提供可靠的数据支持,从而做出更加准确、更加有效的决策。
3. 进度管理建设工程信息管理系统可以通过维护和管理各种进度数据,提供准确的进度管理,从而为工程管理者提供有效的业务管理手段。
五、搭建建设工程信息管理系统的注意事项1. 确定需求首先,需要确定当前的需求,并对系统的整体架构和功能进行详细的规划、设计和预算。
建筑工程信息管理系统1、建设工程信息管理系统:是处理建设工程项目信息的人机系统。
它通过收集、存储及分析项目实施过程中有关数据,辅助工程项目管理人员和决策者规划、决策和检查,其核心是辅助对项目目标的控制。
2.建设工程信息管理系统的基本功能:包括投资控制、进度控制、质量控制、合同管理子系统。
(1)投资控制子系统的基本功能:1)投资分配分析;2)编制项目概算和预算;3)投资分配与项目概算的对比分析;4)项目概算与预算的对比分析;5)合同价与投资分配、概算、预算的对比分析;6)实际投资与概算、预算、合同价的对比分析;7)项目投资变化趋势预测;8)项目结算与预算、合同价的对比分析;9)项目投资的各类数据查询;10)提供多种不同管理层面)项目投资报表。
(2)进度控制子系统的基本功能:1)编制双代号网络(CPM)和单代号搭接网络计划(MPM);2)编制多阶网络(多平面群体网络)计划(MSM);3)工程实际进度的统计分析;4)实际进度与计划进度的动态比较;5)工程进度变化趋势预测;6)计划进度的定期调整;7)工程进度各类数据的查询;8)提供多种(不同管理平面)工程进度报表;9)绘制网络图;10)绘制横道图。
(3)质量控制子系统的基本功能:1)项目建设的质量要求和质量标准的制订;2)分项工程、分部工程和单位工程的验收记录和统计分析;3)工程材料验收记录(包括机电设备的设计质量、监造质量、开箱检验情况、资料质量、安装调试质量、试运行质量、.验收及索赔情况);4)工程设计质量的鉴定记录;5)安全事故的处理记录;6)提供多种工程质量报表。
(4)合同管理子系统的基本功能:1)提供和选择标准的合同文本;2)合同文件、资料的管理;3)合同执行情况的跟踪和处理过程的管理;4)涉外合同的外汇折算;5)经济法规库(国内外经济法规)的查询;6)提供各种合同管理报表。
建筑工程管理信息系统一、引言建筑工程管理是一个复杂而庞大的系统,涉及到项目计划、资源分配、进度控制、质量保证等多方面的工作。
为了提高建筑工程的管理水平和效率,建筑工程管理信息系统应运而生。
本文将探讨建筑工程管理信息系统的定义、作用以及实施过程。
二、建筑工程管理信息系统的定义与作用1.1 定义建筑工程管理信息系统是指利用计算机技术和网络通信手段,对建筑工程的各项管理活动进行数据采集、处理、分析和展示的系统。
它将项目的各个环节、各个参与者的信息进行集成,提供决策支持和管理服务。
1.2 作用(1)提高信息化管理水平:通过建筑工程管理信息系统,可以实现各项管理活动的信息化,将纸质文件转化为电子档案,方便管理人员随时查阅和分享信息。
(2)提高工程项目管理效率:建筑工程管理信息系统可以整合项目的各个环节和参与者,实现信息共享和协同工作,减少信息传递的延迟和失误,提高工程项目的管理效率。
(3)优化资源分配:建筑工程管理信息系统可以对人力、物资、设备等资源进行全面的管理和调配,帮助管理者更好地掌握项目进展和资源利用情况,实现资源的合理分配和利用。
(4)提升施工质量:通过建筑工程管理信息系统,可以实现施工质量的监控和评估,及时发现和纠正问题,保证工程质量的达标。
三、建筑工程管理信息系统的实施过程2.1 系统规划与需求分析在实施建筑工程管理信息系统之前,需要进行系统规划和需求分析。
根据实际情况,明确系统的功能模块和需求,为后续的开发和实施提供指导。
2.2 系统设计与开发在系统规划与需求分析的基础上,进行系统的设计与开发。
这一阶段需要确定系统的架构、数据库设计、界面设计等,并进行开发和测试。
2.3 系统上线与培训系统设计与开发完成后,进行系统的上线与培训工作。
管理者和使用人员需要接受相关的培训,了解系统的各项功能与操作流程。
2.4 系统运行与维护系统上线后,需要进行日常的运行和维护工作。
包括数据的录入和维护、系统的升级和优化等。
建筑工地信息管理系统一题目要求建立如下四个文件(括号内为文件中每条记录得字段内容):(1)销售商—配件—建筑工地(建筑商号码,配件号,工地号,数量)(2)建筑工地(工地号,名字,城市)(3)配件(配件号,配件名,颜色,重量,产地)(4)销售商(号码,名字,状态,城市)功能:(1)首先建立文件,然后插入数据,并进行删除,更新操作,最后进行查询操作。
(2)查询与供应商所在城市相同的零件—供应商,项目—供应商记录对。
二需求分析根据题目要求,由于销售商—配件—建筑工地,建筑工地,配件,销售商的各种信息要求以文本文件的方式存放在四个文件中,所以应提供文件的输入,输出等操作;在程序中要浏览销售商—配件—建筑工地,建筑工地,配件,销售商的各种信息,应提供显示,查找,增加,更新等操作;另外还应提供键盘式选择菜单实现功能选择。
三总体设计我们来分析一下整个系统,根据上面的需求分析,可以将这个系统的设计分为如下五大模块:输入,修改,删除,查询,退出。
其中输入,修改,删除,查询是四个主要功能。
四详细设计1.定义结构体#include<stdio.h>#include<stdlib.h>#include<string.h>struct total{char b_num[20];/*销售商号码*/char p_num[20];/*配件号*/char num[20];/*工地号*/char num2[20];/*销售商为工地提供配件数量*/ };struct building{char name[20];/*工地名称*/char num[20];/*工地号*/char city[20];/*工地所在城市*/};struct peijian{char p_name[20];/*配件名称*/char p_num[20];/*配件号码*/char p_colour[20];/*配件颜色*/char p_weight[20];/*配件重量*/. char p_area[20];/*配件产地*/};struct business{char b_name[20];/*销售商名字*/char b_num[20];/*销售商号码*/char b_state[20];/*销售状态*/char b_city[20];/*所在城市*/};2. 各功能模块设计(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='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);printf("请输入工地所在城市:");scanf("%s",build.city);. fwrite(&build,sizeof(struct building),1,fp); printf("是否继续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"))==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("请输入配件产地:");scanf("%s",pj.p_area);fwrite(&pj,sizeof(struct peijian),1,fp); printf("是否继续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) {exit(0);}while(flag=='y'){printf("请输入销售商名称:");scanf("%s",bus.b_name);printf("请输入销售商编号:");scanf("%s",bus.b_num);printf("请输入销售商状态:");scanf("%s",bus.b_state);printf("请输入销售商所在城市:");scanf("%s",bus.b_city);fwrite(&bus,sizeof(struct business),1,fp); printf("是否继续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("请输入销售商号码:");scanf("%s",bpb.b_num);printf("请输入配件编号:");scanf("%s",bpb.b_num);printf("请输入建筑工地编号:");scanf("%s",bpb.num);printf("请输入销售商为工地提供配件数量:"); scanf("%s",bpb.num2);fwrite(&bpb,sizeof(struct total),1,fp); printf("是否继续y/n:\n");scanf(" %c",&flag);}fclose(fp);}void find1(){FILE *fp;struct building build;char flag='y',find;char name[20];if((fp=fopen("c.txt","r+w"))==NULL)printf("\n\tThe system can't open the file!!");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(struct building)),1);/*文件标记向下*/ fwrite(&build,sizeof(build),1,fp);}printf("是否继续:");/*提示是否继续修改另一建筑工地信息*/ scanf(" %c",&flag);}fclose(fp); /*关闭文件*/}(2)修改模块void find2(){FILE *fp;struct peijian pj;char flag='y',find;char name[20];if((fp=fopen("d.txt","r+w"))==NULL)printf("\n\tThe system 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("配件名称:%s\n",pj.p_name);printf("配件编号:%s\n",pj.p_num);printf("配件颜色:%s\n",pj.p_colour);printf("配件重量:%s\n",pj.p_weight);printf("配件产地:%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("请输入配件产地:");scanf("%s",pj.p_name);fseek(fp,-(long)(sizeof(struct peijian)),1);/*文件标记向下*/ fwrite(&pj,sizeof(pj),1,fp);}printf("是否继续:");/*提示是否继续修改另一配件信息*/ scanf(" %c",&flag);}fclose(fp); /*关闭文件*/}void find3(){FILE *fp;struct business bus;char flag='y',find;char name[20];if((fp=fopen("e.txt","r+w"))==NULL)printf("\n\tThe system can't open the file!!");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("销售商状态:%s\n",bus.b_state);printf("所在城市:%s\n",bus.b_city);printf("请输入名称:");scanf("%s",bus.b_name);printf("请输入编号:");scanf("%s",bus.b_num);printf("请输入状态:");scanf("%s",bus.b_state);printf("请输入所在城市名:");scanf("%s",bus.b_city);fseek(fp,-(long)(sizeof(struct business)),1);/*文件标记向下*/ fwrite(&bus,sizeof(bus),1,fp);}printf("是否继续:");/*提示是否继续修改另一已存用户信息*/ scanf(" %c",&flag);}fclose(fp); /*关闭文件*/}void find4()/*按销售商号修改*/{FILE *fp;struct total bpb;char flag='y',find;char num[20];if((fp=fopen("d:/f.txt","r+w"))==NULL)printf("\n\tThe system can't open the file!!");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("提供配件数量:%s\n",bpb.num2);printf("请输入销售商编号:");scanf("%s",bpb.b_num);printf("请输入配件编号:");scanf("%s",bpb.p_num);printf("请输入建筑工地编号:");scanf("%s",bpb.num);printf("请输入提供配件数量:");scanf("%s",bpb.num2);fseek(fp,-(long)(sizeof(struct total)),1);/*文件标记向下*/ fwrite(&bpb,sizeof(bpb),1,fp);}printf("是否继续:");/*提示是否继续修改另一已存用户信息*/scanf(" %c",&flag);}fclose(fp); /*关闭文件*/}(3)删除模块void del1(){struct building build;FILE *fp;if((fp=fopen("c.txt","r+w"))==NULL)printf("打开文件出错");{char flag='y';char find='n';char mc[30];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("建筑工地名称:%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(struct building)),1); fwrite(&build,sizeof(build),1,fp);printf("删除成功\n");}printf("是否继续删除y/n:\n");scanf(" %c",&flag);}fclose(fp);}}void del2(){struct peijian pj;FILE *fp;if((fp=fopen("d.txt","r+w"))==NULL)printf("打开文件出错");{char flag='y';char find='n';char mc[30];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'){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("产地:%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(struct peijian)),1); fwrite(&pj,sizeof(pj),1,fp);printf("删除成功\n");}printf("是否继续删除y/n:\n");scanf(" %c",&flag);}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 mc[30];char n;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("销售商状态:%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(struct business)),1); fwrite(&bus,sizeof(bus),1,fp);printf("删除成功\n");}printf("是否继续删除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 bh[30];char n;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("提供配件数量:%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(struct total)),1);fwrite(&bpb,sizeof(bpb),1,fp);printf("删除成功\n");}printf("是否继续删除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("d.txt","r+w"))==NULL||(fp2=fopen("e.txt","r+w"))==NULL)printf("\n\tThe 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,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("配件产地:%s\n",pj.p_area);printf("名称:%s\n",bus.b_name);printf("编号:%s\n",bus.b_num);printf("状态:%s\n",bus.b_state);printf("销售商所在城市:%s\n",bus.b_city);}printf("是否继续:");/*提示是否继续修改另一配件信息*/scanf(" %c",&flag);}fclose(fp1);fclose(fp2);/*关闭文件*/}void seek2(){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("\n\tThe system can't open the files!!");while (flag='y'){seek='n';rewind(fp1);rewind(fp2);while((fread(&build,sizeof(build),1,fp1))==1&&(fread(&bus,sizeof(bus),1,fp2))==1&&se ek=='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("状态:%s\n",bus.b_state);printf("销售商所在城市:%s\n",bus.b_city);}printf("是否继续:");/*提示是否继续修改另一配件信息*/scanf(" %c",&flag);}fclose(fp1);fclose(fp2); /*关闭文件*/}(5)主函数void main(){ printf("/****************************建筑工地信息管理系统******************************/\n");printf(" /*****************************制作:张腾飞*******************************/\n"); printf(" /*****************************学号:20091004402*******************************/\n");printf(" /*****************************班级:052091-35*******************************/\n");while(n!=15){printf("1.增加建筑工地信息\n2.增加配件信息\n3.增加销售商信息\n4.增加销售商-配件-建筑工地信息\n5.修改建筑工地信息\n6.修改配件信息\n7.修改销售商信息\n8.修改销售商-配件-建筑工地信息\n9.删除建筑工地信息\n10.删除配件信息\n11.删除销售商信息\n12.删除销售商-配件-建筑工地信息\n13.查询与供应商所在城市相同的零件-供应商记录对\n14.查询与供应商所在城市相同的项目-供应商记录对\n15.退出系统\n请选择:"); scanf("%d",&n);. if(n==1)add1();else if(n==2)add2();else if(n==3)add3();else if(n==4)add4();else if(n==5)find1();else if(n==6)find2();else if(n==7)find3();else if(n==8)find4();else if(n==9)del1();else if(n==10)del2();else if(n==11)del3();else if(n==12)del4();else if(n==13)seek1();else if(n==14)seek2();}}五上机操作(1)主菜单函数(3)数据输入模块在主界面出现后,若选择输入1并按【Enter】键,即输入建筑工地信息,结果如下图。