没有合适的资源?快使用搜索试试~ 我知道了~
数据结构课内实验报告模板-商品货架问题.doc
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 176 浏览量
2022-06-13
08:02:53
上传
评论 1
收藏 109KB DOC 举报
温馨提示
试读
12页
数据结构课内实验报告模板-商品货架问题
资源推荐
资源详情
资源评论
*******
数据结构课内实验报告
题 目: 商品货架管理
院系名称: 计算机学院
专业名称: 软件工程专业
班 级: 0901 班
学生姓名: *****
学号(8 位): *********
一. 需求分析
程序设计的任务:
商品货架可以看成是一个栈,栈顶产品的生产日期最早,栈底商品的生产日期最近 。
上货时,需要倒货架,以保证生产日期较近的商品在较下的位置。用队列和栈作为周
转,实现上述管理过程。
(1) 输入的形式和输入值的范围;
输入的形式:
请输入商品货物名称:
请输入商品上架时间:
是否继续输入(Y/N):
请输入新增商品货物名称:
请输入新增商品上架时间:
是否继续输入(Y/N):
输入值的范围:
名称:字符串
日期:整数
(2) 输出的形式;
倒货架后商品的信息为:
商品名称 生产日期
(3) 程序所能达到的功能;
将商品信息顺序的放在一个栈中,新增商品放入另一个栈中,然后通过队列
来进行一个倒货架的一个过程。
(3) 测试数据:包括正确的输入及其输出结果和含有错误的输入及其输出结果。
二. 概要设计
本题采用了栈和队列数据结构,共采用二个栈和一个队列,实现了倒货架。
栈:先进后出
队列:先进先出
功能模块图以及各个模块的功能描述:
重要函数:
1. int add_goods(stack *add); 初始化新栈
2. int push(stack *top); 入栈
3. void Initstack(stack *top); 初始化一个带头结点的栈
4. queue* enterqueue(stack *add,stack *top); // 将栈中元素入队列
5. int Initqueue(queue *Q); 初始化队列
6. void destroy(stack *add); 销毁栈,释放空间
7. void enterstack(queue *newlinkqueue,stack * start,stack *top); // 将队列元素入栈
8. void printgoods(stack *top); 打印栈中元素
9. stack * printqueue(queue *Q); 打印队列中的元素,并将队列的队头指针,然后传参
三.详细设计
栈和队列的数据类型定义:
#define N sizeof(stack)
typedef struct goods_stack { //构造堆栈结构体
long int date;
char goods[80];
struct goods_stack *next;
}stack;
typedef struct //队列
{
stack * front;
stack * rear;
}queue;
核心算法:
// 将栈中元素入队列
queue * enterqueue(stack *add,stack *top)
{
queue * new1;
stack *temp;
new1 = (queue *)malloc(sizeof(queue));
Initqueue(new1);
add = add->next;
while(add) //
将 add 中所有元素入队列 queue 中去
{
temp = (stack *)malloc(N);
strcpy(temp->goods,add->goods);
temp->date = add->date;
add = add->next;
new1->rear->next =temp;
new1->rear = temp;
}
destroy(&add); //
销毁 add 栈中元素
add =(stack *)malloc(N);
Initstack(add);
top = top->next;
while(top)
//将 top 栈中元素全部入栈到 add 栈
剩余11页未读,继续阅读
资源评论
oligaga
- 粉丝: 50
- 资源: 2万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功