C语言:简易商品库存管理系统(简单易懂,不用指针的入门级示例,数据结构大作业)

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);<
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值