900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 简易倒货架

简易倒货架

时间:2024-07-17 19:55:50

相关推荐

简易倒货架

/*

商品货架,货架顶商品的生产日期最早,货架底商品的生产日期最近。

上货时,需要倒货架,以保证生产日期较近的商品在较下的位置。

设计2个算法实现“倒货架”的过程。

要求:1算法1使用栈或队列实现。

*/

在这里插入代码片#define Maxsize 100#define STACKINCREMENT 10typedef struct shelf_stack {int *base;int *top;int stacksize;//堆栈结构}Sqstack,*Stack;void init_stack(Stack s); //创建一个堆栈void pop_stack (Stack s,int *e); //删除栈顶元素,将栈顶元素用e返回void push_stack(Stack s,int e); //将元素e入栈void transfer(Sqstack s,Sqstack t,int k); //倒货架函数```#include<stdio.h>void insert_sort(int A[],int N)//插入排序,按从大到小排序{int temp,p,i;for(p=1;p<N;p++){temp=A[p];for(i=p;A[i-1]<temp&&i>0;i--)A[i]=A[i-1];A[i]=temp;}}int main(){printf("***************Administrion Of Goods Shelf System***************\n");int k,i,length;i=0;printf("Please input the information of present goods:\n");while(k!=-1){//输入原有的货物直到-1结束scanf("%d",&k);if(k>0) {A[i]=k;i++;}}printf("Please input the information of new goods:\n");scanf("%d",&k); //输入新货物A[i]=k;length=i+1;printf("****************************renewing****************************\n"); insert_sort(A,length);{for(i=length-1;i>=0;i--) //从上到下输出排序好的货物{printf("%d\n",A[i]);}printf("*****************************over*****************************\n"); while(1);return 0;}}

分析过程

从上到下输入货物,-1为结束输入。再输入新货物的参数。

倒货架函数三个输入参数,堆栈S,堆栈T,放入的新货物。将S货架导入T中,直到货架日期小于新货架。将小于的那一个i货品先弹出 。将新货品入栈。小于新货品的物品入栈。将s的货继续倒入t中。t中的货倒入s中。再将t中的货物按生产日期从远到近输出。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。