#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#define N 10
struct goods_info
{
int num;
char name[20];
long count;
float price;
};
int findgoods(struct goods_info *goods_arr,int findnum);
void addstock(struct goods_info *goods_arr);
void substock(struct goods_info *goods_arr);
void main()
{
int selmenu;
int goodsnum;
int i;
struct goods_info goods[N]={{1001,"毛巾",200,3.50},{1002,"床单",30,20.00},
{1003,"被罩",50,25.00},{1004,"棉被",25,45.00},
{1005,"大衣",40,50.00},{1006,"鞋",55,30.00},
{1007,"帽子",30,15.00},{1008,"背包",33,20.00},
{1009,"仪表",20,45.00},{1010,"棉衣",40,25.00}};
do
{
system("cls");
printf("/n/n");
printf("/t/t===========商品库存管理系统===========/n/n");
printf("/t/t/t1.商品入库/n");
printf("/t/t/t2.商品出库/n");
printf("/t/t/t3.商品查找/n");
printf("/t/t/t4.退出/n/n");
printf("请输入功能选项号码:");
scanf("%d",&selmenu);
system("cls");
switch(selmenu)
{
case 1:addstock(goods);break;
case 2:substock(goods);break;
case 3:
printf("请输入要查找的商品编号:");
scanf("%d",&goodsnum);
i=findgoods(goods,goodsnum);
printf("/n");
if(i<0)
printf("输入商品编号错误,没找到该商品!");
else
{
printf("商品编号/t名称/t数量/t单价/n");
printf("%d/t/t%s/t%d/t%.2f/n",goods[i].num,goods[i].name,
goods[i].count,goods[i].price);
}
getch();
break;
case 4:break;
default:
printf("输入错误!!/n");
getch();
}
}while(selmenu!=4);
}
int findgoods(struct goods_info *goods_arr,int findnum)
{
int i;
for(i=0;i<N;i++,goods_arr++)
{
if(goods_arr->num==findnum)
return i;
}
return -1;
}
void addstock(struct goods_info *goods_arr)
{
int i,addnum,addcount;
printf("请输入入库商品编号:");
scanf("%d",&addnum);
i=findgoods(goods_arr,addnum);
if(i<0)
{
printf("输入商品编号错,入库失败!");
getch();
}
else
{
printf("请输入入库数量:");
scanf("%d",&addcount);
goods_arr[i].count+=addcount;
}
}
void substock(struct goods_info *goods_arr)
{
int i,subnum,subcount;
printf("请输入入库商品编号:");
scanf("%d",&subnum);
i=findgoods(goods_arr,subnum);
if(i<0)
{
printf("输入商品编号错,出库失败!");
getch();
}
else
{
printf("请输入出库数量:");
scanf("%d",&subcount);
if(subcount>goods_arr[i].count)
{
printf("编号为%d的%s库存为%d不足出库,出库失败!",
goods_arr[i].num,goods_arr[i].name,goods_arr[i].count);
getch();
}
else
goods_arr[i].count-=subcount;
}
}
#include<stdlib.h>
#include<conio.h>
#define N 10
struct goods_info
{
int num;
char name[20];
long count;
float price;
};
int findgoods(struct goods_info *goods_arr,int findnum);
void addstock(struct goods_info *goods_arr);
void substock(struct goods_info *goods_arr);
void main()
{
int selmenu;
int goodsnum;
int i;
struct goods_info goods[N]={{1001,"毛巾",200,3.50},{1002,"床单",30,20.00},
{1003,"被罩",50,25.00},{1004,"棉被",25,45.00},
{1005,"大衣",40,50.00},{1006,"鞋",55,30.00},
{1007,"帽子",30,15.00},{1008,"背包",33,20.00},
{1009,"仪表",20,45.00},{1010,"棉衣",40,25.00}};
do
{
system("cls");
printf("/n/n");
printf("/t/t===========商品库存管理系统===========/n/n");
printf("/t/t/t1.商品入库/n");
printf("/t/t/t2.商品出库/n");
printf("/t/t/t3.商品查找/n");
printf("/t/t/t4.退出/n/n");
printf("请输入功能选项号码:");
scanf("%d",&selmenu);
system("cls");
switch(selmenu)
{
case 1:addstock(goods);break;
case 2:substock(goods);break;
case 3:
printf("请输入要查找的商品编号:");
scanf("%d",&goodsnum);
i=findgoods(goods,goodsnum);
printf("/n");
if(i<0)
printf("输入商品编号错误,没找到该商品!");
else
{
printf("商品编号/t名称/t数量/t单价/n");
printf("%d/t/t%s/t%d/t%.2f/n",goods[i].num,goods[i].name,
goods[i].count,goods[i].price);
}
getch();
break;
case 4:break;
default:
printf("输入错误!!/n");
getch();
}
}while(selmenu!=4);
}
int findgoods(struct goods_info *goods_arr,int findnum)
{
int i;
for(i=0;i<N;i++,goods_arr++)
{
if(goods_arr->num==findnum)
return i;
}
return -1;
}
void addstock(struct goods_info *goods_arr)
{
int i,addnum,addcount;
printf("请输入入库商品编号:");
scanf("%d",&addnum);
i=findgoods(goods_arr,addnum);
if(i<0)
{
printf("输入商品编号错,入库失败!");
getch();
}
else
{
printf("请输入入库数量:");
scanf("%d",&addcount);
goods_arr[i].count+=addcount;
}
}
void substock(struct goods_info *goods_arr)
{
int i,subnum,subcount;
printf("请输入入库商品编号:");
scanf("%d",&subnum);
i=findgoods(goods_arr,subnum);
if(i<0)
{
printf("输入商品编号错,出库失败!");
getch();
}
else
{
printf("请输入出库数量:");
scanf("%d",&subcount);
if(subcount>goods_arr[i].count)
{
printf("编号为%d的%s库存为%d不足出库,出库失败!",
goods_arr[i].num,goods_arr[i].name,goods_arr[i].count);
getch();
}
else
goods_arr[i].count-=subcount;
}
}