欢迎来到天天文库
浏览记录
ID:39484048
大小:90.01 KB
页数:10页
时间:2019-07-04
《商品货架管理》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、西安郵電學院数据结构课内实验报告题目:商品货架管理院系名称:专业名称:班级:学生姓名:学号(8位):10一.需求分析本程序的任务:设计一个商品货架管理系统,要求:(1):利用栈和队列去设计(2):栈顶的生产日期最早,栈底的最晚,上货架的时候,是生产日期较近的在较下的的位置。(3):输入值的范围:日期大于20100302,个数小于7,必须按照由小到大的顺序输入(3):功能:要进行货架的周转二.概要设计1.功能模块图;push()函数的流程图:开始s1->top=-1;i=1igoods[s1->top]s1àtop++s1->goods[s
2、1->top].date<=Nreturns1->topi++真假break结束循环体语句真假Insert()函数的流程图:10开始s2->top=-1;s1->top!=-1&&New.date>s1->goods[s1->top].dates2->top++;输出,s1栈中商品出栈把s1中的商品信息传递到s2中s1->top--真假Pop(s1);Pop(s2)把New的商品信息插入到s1中循环体语句returns1->top结束s2->top!=-1&&New.date>s2->goods[s2->top].dates1->top++;输出s1->goo
3、ds[s1->top].name出栈把s2中的商品信息传递到s1中s2->top--真假输出s2栈中商品进栈s1循环体语句10Pop函数的流程图:s1->top!=-1输出s1栈中的信息s1->top--假真开始结束main()函数流程图:开始Top=push(&s1)输入要插入的信息New.date<=N输出errorTop=Insert(&s1,New,&s2);Pop(s1)结束假真2.各个模块的功能描述。10push()函数功能:往栈中输入信息Insert()函数功能:插入新的信息Pop()函数功能:输出栈中的信息。三.详细设计数据类型structin
4、formation{charname[10];longdate;};typedefstruct{structinformationgoods[size];inttop;}seqstack;intTOP;structinformationNew;seqstacks1,s2;伪码算法push():for(i=1;itop++;scanf("%s%d",s1->goods[s1->top].name,&s1->goods[s1->top].date);if(s1->goods[s1->top].date<=N)break;}Insert
5、():s2->top=-1;for(;s1->top!=-1&&New.date>s1->goods[s1->top].date;s1->top--){s2->top++;strcpy(s2->goods[s2->top].name,s1->goods[s1->top].name);s2->goods[s2->top]=s1->goods[s1->top];}s1->top++;strcpy(s1->goods[s1->top].name,New.name);s1->goods[s1->top].date=New.date;for(;s2->top!=-1&&
6、s2->goods[s2->top].date>=N;s2->top--){s1->top++;10strcpy(s1->goods[s1->top].name,s2->goods[s2->top].name);s1->goods[s1->top].date=s2->goods[s2->top].date;}Pop():for(;s1->top!=-1;s1->top--)printf("%9s%10d",s1->goods[s1->top].name,s1->goods[s1->top].date);函数调用关系图:Insert();main();pus
7、h();Pop();四.时间复杂度分析push()函数的时间复杂度为:O(s1->top);Insert()函数的时间复杂度为:O(2*s1->top+1);Pop()函数的时间复杂度为:O(s1->top+1);所以整个程序的时间复杂度为:O(4*s1->top+2);五.测试数据及运行结果(1):正常的输入:red20110302wer20110205dio20100605ree20100203输入新的商品信息:die20100708正常的运行结果:ree出栈!dio出栈!thegoodsinthes1:(原栈)wer20110205red20110302
8、thegoodsinthes2:(辅助
此文档下载收益归作者所有