C语言课程设计___建筑工地信息管理系统
C语言课程设计
班级:052081-24学号:
目录
前言………………………………………………….............(3)1.题目要求…………………………………………………..(3)2.分析………………………………………………………..(3)3.总体设计…………………………………………………..(3)4.详细设计…………………………………………………..(4)一.主函数…………………………………………………(4)二.功能模块设计…………………………………………(5)(1)数据输入设计……………………………………….(5)(2)删除设计…………………………….......................(10)(3)查询设计…………………………………………...(13)(4)查找配对设计……………………………………...(16)5.上机操作…………………………………………………(18)后记………………………………………………………...(20)附录:程序源清单………………………………………….(20)
=
前言
课程设计目的:C语言编程实践是学习C语言的一个重要环节,为提高学生的程序设计能力,通过课堂和上机实践使学生的程序设计能力有一个上升的台阶。通过前四单元的温故而知新、庖丁解牛、举一反三、熟能生巧等过程的练习之后能够解决一些简单的实际问题。
1、题目要求
设计:“建筑工地信息管理系统”
建立如下4个文件(括号内为文件中每条记录的字段内容):
(1)销售商-配件-建筑工地(销售商号码,配件号,工地号,数量)(2)建筑工地(工地号,名字,城市)
(3)配件(配件号,配件名,颜色,重量,产地)(4)销售商(号码,名字,状态,城市)功能:
(1)首先建立文件,然后插入数据,并进行删除、更新操作,最后进行查询操作。(2)查询与供应商所在城市相同的零件——供应商,项目——供应商记录对。
2、分析
根据题目要求,建立文件,应选择结构体数组来存放数据,再定义一个全局变量和文件指针进行程序的运行,然后把数据信息存入文件中,所以要提供结构体和文件的输入输出等操作;在程序中要进行数据的插入、删除、更新、查询等操作,所以需要建立相应的模块来实现,为简便起见,还应建立一个主菜单,在每个模块中建立相应的副菜单;另外,还要提供键盘式选择菜单来实现选择功能,使程序在运行时达到要求。
3、总体设计
根据题目要求,可以将系统分为:1)插入数据模块;2)删除模块;3)查询模块;
4)查找配对;5)功能选择菜
建筑工地信息管理系统
数据输入模块
删除模块
查询模块
查找配对模块
功能选择菜单
图1系统功能模块图
4、详细设计
一、主函数
【分析】主函数一般设计得比较简便,只提供输入、处理和输出部分的函数调用。其中各功能模块用菜单方式选择。其流程图:
开始
显示一系列功能选择
输入n,判断w是否是0到4?
N
根据n值调用各功能模块函数
结束
图2主函数流程图
【程序】
/************************主菜单*********************************/voidmenu(){
intn,w;/*变量n保存选择菜单数字,w判断输入的数字是否在功能菜单对应数字范围内*/do
{puts("\t\t*************建筑工地信息管理****************\n\n");puts("姓名:覃振孔");
puts("学号:20081002799");puts("班学号:052081-24");
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.Exit");
puts("\n\n\t\t**************************************\n");printf("Chooseyournumber(1-5):[]\b\b");scanf("%d",&n);if(n<1||n>5){w=1;getchar();}elsew=0;}
while(w==1);switch(n)
{case1:enter();break;case2:delete();break;case3:search();break;case4:search2();break;case5:exit(0);}}
main(){
menu();}
二、各功能模块设计
(1)数据输入设计
【分析】数据信息存放在文件中,用结构体存放,方便数据输入与数据的保存。另外,输入模块中建立副菜单,用以输入四个文件的信息选项。
图3数据输入模块流程图
【程序】
/*****************************数据输入模块************************************/voidsal_enter(){intj;charc[2];FILE*fp;
if((fp=fopen("data1.txt","w"))==NULL){
printf("Cannotopenthefile!\n");exit(0);}
for(j=0;j<i;j++){
fwrite(&sal[j],sizeof(structsale),1,fp);}
while(1){
printf("输入销售商号码:\n");scanf("%d",&sal[i].num1);printf("输入配件号码:\n");scanf("%d",&sal[i].num2);printf("输入工地号码:\n");scanf("%d",&sal[i].num3);printf("输入数量r:\n");scanf("%d",&sal[i].num4);
if(fwrite(&sal[i++],sizeof(structsale),1,fp)!=1)
printf("Filewriteerror\n");elseprintf("Successful!\n");
printf("是否继续?(是[y]/否[n])\n");scanf("%s",c);
if(strcmp(c,"n")==0)break;}
fclose(fp);menu();}
voidbuild_enter(){intj;charc[2];FILE*fp;
if((fp=fopen("data2.txt","w"))==NULL){
printf("Cannotopenthefile!\n");exit(0);}
for(j=0;j<i;j++){
fwrite(&build[j],sizeof(structbuilding),1,fp);}
while(1){
printf("输入工地号:\n");scanf("%d",&build[i].num);printf("输入工地名:\n");scanf("%s",build[i].name);printf("输入工地城市:\n");scanf("%s",build[i].city);
if(fwrite(&build[i++],sizeof(structbuilding),1,fp)!=1)printf("Filewriteerror\n");elseprintf("Successful!\n");
printf("Isthereanymore?(Yes[y]/No[n])\n");scanf("%s",c);
if(strcmp(c,"n")==0)break;}
fclose(fp);menu();}
voidpj_enter(){intj;charc[2];FILE*fp;
if((fp=fopen("data3.txt","w"))==NULL){
printf("Cannotopenthefile!\n");exit(0);}
for(j=0;j<i;j++){
fwrite(&pj[j],sizeof(structpeijian),1,fp);}
while(1){
printf("输入配件号:\n");scanf("%d",&pj[i].num);printf("输入配件名:\n");scanf("%s",pj[i].name);printf("输入配件颜色:\n");scanf("%s",pj[i].color);printf("输入配件重量:\n …… 此处隐藏:2904字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [教育文库]夜场KTV服务员的岗位职责及工作流程[1]
- [教育文库]企划、网络、市场绩效考核方案
- [教育文库]学党史、知党情、强党性--“党的基本理
- [教育文库]2016年高考物理大一轮总复习(江苏专版
- [教育文库]干部廉洁自律自查自纠的报告
- [教育文库]2010年北京大学心理学系拟录取硕士研究
- [教育文库]资金时间价值练习题及答案
- [教育文库]保护环境的心得体会
- [教育文库]英语角内容:英语趣味小知识
- [教育文库]档案收集与管理工作通知
- [教育文库]劳动规章制度范本范本
- [教育文库]高考物理一轮复习课后限时作业1运动的
- [教育文库]机械工艺夹具毕业设计195推动架设计说
- [教育文库]通用技术教学比赛说课稿2
- [教育文库]2018年四年级英语下册 Module 7 Unit 2
- [教育文库]第2章 宽带IP网络的体系结构
- [教育文库]九年级化学第五单元课题3《根据化学方
- [教育文库]小学英语六年级情态动词用法归纳
- [教育文库]甲级单位编制窑井盖项目可行性报告(立
- [教育文库]2016-2021年中国城市规划行业全景调研
- 高考英语听力十大场景词汇总结
- 全省领导班子思想政治建设座谈会会议精
- 人教版新课标高一英语提优竞赛试题 下
- 江西省2014年生物中考试题
- 长沙镇食品药品安全事故应急预案
- 《金刚石、石墨和C60》片段教学设计
- 福州教育学院(王旭东)
- 基于EDA音乐播放器的设计
- 9、古诗两首《夜书所见》《九月九日忆
- 小学语文课外阅读有效策略探讨
- 贵州文化产业发展成支柱产业的问卷调查
- 膀胱类癌的诊治体会(附3例报告)
- 发动机积碳产生的原因
- Configuring Code Composer Studio for
- 学生良好的心理素质如何培养点滴谈
- 46 电沉积法制备锂离子电池用硅-锂薄膜
- 美舍雅阁公司管理中各部门职责
- 去壳剥皮的小妙招
- 六自由度运动平台的仿真研究
- Pride and Prejudice(傲慢与偏见)




