- 1、本文档共42页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言课程设计论文(建筑工地信息管理系统
目 录
课程设计评语 2
目 录 3
1.课程论文题目 4
2.程序设计思路 4
3.功能模块图 4
4.程序代码 4
5.程序运行结果 24
6.编程中遇到的困难及解决方法 27
7.总结心得及良好建议 28
8.致谢 28
9.参考文献 28
1.课程论文题目
建筑工地信息管理系统
【要求】
建立如下4个文件(括号内为文件中每条记录的字段内容(1)销售商-配件-建筑工地 (销售商号码,配件号,工地号,数量)
(2)建筑工地 (工地号,名字,城市)
(3)配件 (配件号,配件名,颜色,重量,产地)
(4)销售商 (号码,名字,状态,城市)
功能:
(1)首先建立文件,然后插入数据,并进行删除、更新操作,最后进行查询操作。
(2)查询与供应商所在城市相同的零件——供应商,项目——供应商记录对。
2.程序设计思路
根据题目要求,由于建筑工地信息是存放在文件中,所以应提供文件的输入、输出等操作;在程序中要浏览、修改建筑工地的信息,应提供输入、删除、查找、配对操作;另外还应提供键盘式选择菜单实现功能选择。
3.功能模块图
根据上面的需求分析,可以将这个系统的设计分为数据输入、数据删除、数据查找、数据配对这几个模块。
图1 系统功能模块图
4.程序代码
4-1 主函数
主函数一般设计得比较简,只提供输入、处理和输出部分的函数调用。其中各功能模块用菜单方式选择。其流程图void menu()
{ int n;
puts(\t\t************建筑工地信息管理***********\n\n);
puts(\t\t****************MENU*******************\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);
loop: printf(Choose your number (1-5):[ ]\b\b);
scanf(%d,n);
if(n1||n5) {printf(Error!);goto loop;}
else
{
switch(n)
{
case 1:enter();break;
case 2:delete();break;
case 3:search();break;
case 4:search2();break;
case 5:exit(0);
}
}
}
main()
{
menu();
}
4-2 输入模块
【需求分析】
单独看各数据信息,名字、城市、配件名、颜色、重量、产地、状态是字符型,可以采用字符型数组;销售商号码、配件号、工地号、号码为整数,采用整型。数据信息分别放在4个文件中,每条记录对应相应的字段内容。数据信息采用结构体的形式。输入模块中建立副菜单,用以选择要输入的文件。其流程图如下图3所示:
图3 输入模块流程图
【程序】
/*****************************数据输入模块************************************/
void sal_enter()
{
int j; char c[2]; FILE *fp;
if((fp=fopen(data1.dat,wb))==NULL)
{
printf(Can not open the file!\n);
exit(0);
}
for(j=0;ji;j++)
fread(sal[j],sizeof(struct sale),1,fp);
while(1)
{
printf(输入销售商号码:\n);
scanf(%d,sal[i].num1);
printf(输入配件号码:\n);
scanf(%d,sal[i].num2);
printf(输入工地号码:\n);
文档评论(0)