printf("\n名称:
%-10s数量:
%-5d生产日期:
%d年%d月截止日期:
%d年%d月\n",huowu[i].name,huowu[i].num,huowu[i].jin.year,huowu[i].jin.month,huowu[i].bao.year,huowu[i].bao.month);
break;
}
}
///////////////////////////////////////////////////////////////////////////////
voidmain()
{
FILE*ft;
intt,huowushu;
charch;
nodehuowu[20];
printf("\n");
printf("==============================欢迎进入货物管理系统==============================");
printf("\n");
while(t!
=6)
{
printf("\n--------------------------------------------------------------------------------\n");
printf("1扩充2查看3删除4排序5查询6退出\n");
printf("\n--------------------------------------------------------------------------------\n");
printf("你要进行的操作...");
scanf("%d",&t);
fflush(stdin);
switch(t){
case1:
kuochong(ft);
fflush(stdin);
break;
case2:
huowushu=visite(ft,huowu);
fflush(stdin);
break;
case3:
shanchu(huowu,huowushu,ft);
fflush(stdin);
break;
case4:
paixu(huowu,huowushu);
fflush(stdin);
break;
case5:
chaxun(ft,huowu,huowushu);
break;
case6:
printf("\n谢谢惠顾!
\n");
break;
}
}
}
(2)设置一个函数intvisite(FILE*ft,nodehuowu[20]),从文件中将信息读出并保存在数组中。
(3)设置一个扩充的函数,voidkuochong(FILE*ft)。
这个函数是最初商品输入函数,当选择了这个功能后,保存输入,那将在D盘产生一个名为“商品.doc”的文件。
(4)设置一个修改的函数voidxiugai(nodehuowu[20],intn,FILE*ft),那输入的商品信息将代替原有的信息,数据输入使用交互输入,进行人机对话,确定是否进行下一个数据的添加。
并且调用了上面的排序函数,对输入的数据进行排序。
(5)设置一个查找删除的函数,voidshanchu(nodehuowu[20],intn,FILE*ft)。
输入要查找的商品名称,如果不存在,则输出失败信息,如果存在,则用下一个信息代替原有信息的位置。
(6)设置一个排序的函数,voidpaixu(nodehuowu[20],intn)利用冒泡法[1]先对商品按进货的时间排序,对进货时间一样的货物,再按离保质期最近排序。
(7)设置一个查找显示的函数,voidchaxun(FILE*ft,nodehuowu[20],intn)。
输入要查找的商品名称,如果不存在,则输出失败信息,如果存在,则显示信息。
(8)进入最后一步,main函数。
建立一个菜单函数,显示5个功能,供用户选择,进行人机对话。
判断选择的操作,根据用户选择的操作,利用switch语句进行相应的函数调用。
选择保存功能,对数据进行保存,然后选择结束程序退出功能,退出程序
7.2流程图:
8调试与操作说明
8.1操作说明
系统的使用者只需按照使用过程中的提示即可完成所有操作
8.2运行结果
从文件中读取的结果
原货物管理信息.txt文件中的信息
经扩充后文件中的信息及操作过程
修改的过程
删除的过程
排序的三个结果
查询的操作
9课程设计总结与体会
9.1总结
转眼,为期三周的《数据结构》课程设计实习即将结束了。
在这次实习中,自己的C语言知识和数据结构知识得到了巩固,编程能力也有了一定的提高。
同时也学会了解决问题的方法。
总结起来,自己主要有以下几点体会:
1.必须牢固掌握基础知识。
由于C语言是大一所学知识,有所遗忘,且未掌握好这学期所学的《数据结构》这门课,所以在实习之初感到棘手。
不知如何下手,但在后来的实习过程中自己通过看书和课外资料,并请教其他同学,慢慢地对C语言和数据结构知识有所熟悉。
这时才逐渐有了思路。
所以,这次实习之后,我告诫自己:
今后一定要牢固掌握好专业基础知识。
2.必须培养严谨的科学态度。
自己在编程时经常因为一些类似于“少了分号”的小错误而导致错误,不够认真细致,这给自己带来了许多麻烦。
编程是一件十分严谨的事情,容不得马虎。
所以在今后自己一定要培养严谨的科学态度。
我想这不仅是对于程序设计,做任何事都应如此。
3.这次课程设计也让我充分认识到《数据结构》这门课的重要性。
它给我们一个思想和大纲,让我们在编程时容易找到思路,不至于无章可循。
同时它也有广泛的实际应用。
总之,在这次实习中,自己的C语言以及数据结构知识得到提高,编程能力也得到了提高。
9.2收获与体会
编程的核心是算法结构,数据结构又包括逻辑结构和物理结构,编程中要时刻注意这些问题。
调试过程远远比编程过程繁琐,需要足够的耐心对一个个错误进行修改直至完全正确。
并且调试过程也需要一定的技巧,能够选取适当的实验数据对程序进行验证,找到出错的地方以进行修正。
10致谢
以简短的文字对在设计研究和设计报告撰写过程中曾直接给予帮助的人员表示自己的谢意。
11参考文献
[1]《C语言程序设计》何钦铭,颜晖[M]北京;高等教育出版社,2008年1月
[2]《数据结构》胡学钢[M]北京;高等教育出版社,2008年1月
评语:
评阅教师签名:
年月日
成绩