#include "ex1_ans.h"
int main()
{ int ch=1,i,j,n;
struct goods_type g[MAXLEN],tem;
while(ch!=0)
{ printf("***********系统功能菜单**********\n");
printf("* 1-----------输入商品信息 *\n");
printf("* 2-----------按编号排序 *\n");
printf("* 3-----------按库存排序 *\n");
printf("* 4-----------输出商品信息 *\n");
printf("* 0-----------退出系统 *\n");
printf("*********************************\n");
printf("请输入你的选择:");
scanf("%d",&ch);
switch(ch)
{ case 1: printf("请输入商品的种类数:");
scanf("%d",&n);
for(i=0;i<n;i++)
{
printf("请输入第%d种商品的编号、名称、单价和数量:\n",i+1);
scanf("%d%s%f%d",&g[i].num,g[i].name,&g[i].price,&g[i].stock);
}
break;
case 2: sort_num(g,n);
break;
case 3: sort_stock(g,n);
break;
case 4: printf(" 编号 名称 单价 库存量\n");
for(i=0;i<n;i++)
printf("%5d%10s%8.2f%8d\n",g[i].num,g[i].name,g[i].price,g[i].stock);
printf("\n");
break;
case 0: printf("退出商品信息管理程序,谢谢使用!\n");
}
}
return 0;
}
void sort_num(struct goods_type g[],int n)
{ int i,j;
struct goods_type tem;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(g[j].num<g[i].num)
{ tem=g[i];
g[i]=g[j];
g[j]=tem;
}
}
void sort_stock(struct goods_type g[],int n)
{ int i,j;
struct goods_type tem;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(g[j].stock<g[i].stock)
{ tem=g[i];
g[i]=g[j];
g[j]=tem;
}
}