C语言:商品库存管理系统(简单易懂,不用指针的入门级示例)
没有使用指针,没有写入文件,全部是最基础的c语言语句,本程序使用vc6.0测试
功能:
1.创建商品的信息
2.显示全部商品对信息(商品数量低于100显示红色,高于300显示绿色)
3.修改商品信息
4.查询商品信息
5.排序(低到高和高到低排序商品的信息)
6.最值(获取商品信息的最大和最小值)
7.删除商品信息
8.增加商品信息
#include<stdio.h>
#include<math.h>
#include<windows.h>
struct commodity{
char name[10];
int num,amount,cost,sell,profit;
};
struct commodity s[30];
// num:编号 name:商品名字 amount:商品仓库数量 cost:进价 sell:售价 profit:利润
int n; //记录现有商品的数量
int t; //全局可用的变量
void into();//创建信息
void look();//展示全部信息
void change();//修改
void search();//查询
void up(); //低到高排序
void down();//高到低排序
void maxmin();//最大最小
void delated();//删除
void add();//增加信息
//颜色模块(用于变色输出字体的颜色)
void color(char x)
{
if(x>=0 && x<=15)
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), x);
else
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 9);
}
//主函数模块
int main(void)
{
int a;
do{
color(3);
printf("-------------------------------");
printf("\n/ 菜单栏 /\n");
printf(" 01:创建商品信息\n");
printf(" 02:展示所有商品信息\n");
printf(" 03:出入库及修改信息\n");
printf(" 04:查找某个商品信息\n");
printf(" 05:从低到高排列信息\n");
printf(" 06:从高到低排列信息\n");
printf(" 07:查看最大与最小值\n");
printf(" 08:删除商品信息\n");
printf(" 09:增加商品信息\n");
printf(" 00:退出\n");
printf("/------------------------------/\n\n");
color(7);
printf("Enter:");
scanf("%d",&a);
switch(a)
{
case 1:
{
printf("\n请输入要录入的商品个数:");
scanf("%d",&n);
into();
}break;
case 2:look();break;
case 3:change();break;
case 4:search();break;
case 5:up();break;
case 6:down();break;
case 7:maxmin();break;
case 8:
{
delated();
n=n-1;
}break;
case 9:
{
printf("\n请输入要增加的商品个数:");
scanf("%d",&t);
add();
n=n+t;
}break;
case 0:break;
default: color(6); printf("\n输入的功能编号错误!\n");color(7);//color(6)字体变化为红色,7是白色
}
}
while(a!=0);
return 0;
}
//创建信息模块
void into()
{
int i;
printf("编号 名字 数量 进价 售价 \n");
for(i=0;i<n;i++)
{
scanf("%d %s %d %d %d",&s[i].num,&s[i].name,&s[i].amount,&s[i].cost,&s[i].sell);
s[i].profit=s[i].sell-s[i].cost; //计算利润
}
printf("\n\n保存成功!结果如下:");
look();
}
//展示所有信息
void look()
{
int i;
int total_profit=0; //总利润
color(3);
printf("\n-----------------------------------------\n");
printf("编号 名字 数量 进价 售价 利润\n\n");
color(7);
for(i=0;i<n;i++)
{
if(s[i].amount <100)
{
color(4);
printf(" %d %7s %5d %6d %7d %7d \n",s[i].num ,s[i].name,s[i].amount,s[i].cost,s[i].sell,s[i].profit);
color(7);
}
else if(s[i].amount >300)
{
color(2);
printf(" %d %7s %5d %6d %7d %7d \n",s[i].num ,s[i].name,s[i].amount,s[i].cost,s[i].sell,s[i].profit);
color(7);
}
else
{
printf(" %d %7s %5d %6d %7d %7d \n",s[i].num ,s[i].name,s[i].amount,s[i].cost,s[i].sell,s[i].profit);
}
color(7);
}
printf("\n预计总利润:");
for(i=0;i<n;i++)
{
total_profit=total_profit+s[i].profit *s[i].amount ;
}
printf("%d\n\n",total_profit);<