商店仓库管理系统——C++

  • 问题描述

系统应具有下列主要功能:输入记录功能:从键盘输入货物信息:商品代号,商品名称, 数量,价格,所属类别(如家用电器、日用品等)等;修改商品数量、删除记录功能、按商品代号查询、按商品代号排序并显示等功能。 

  • 设计要求

(1) 使用继承的方法构造至少 3 个类,(即商品类 Goods——虚基类,家用电器类和日 用品类——派生类),另外再设计一个管理类,实现对商品的管理;

(2) 用文本编辑器编辑一个文本文件(总数 20 件以上)包含各类商品信息,程序运行 时进行初始化数据,使用 vector 数组存放对象指针。并能保存数据为磁盘文件。

(3)  编写同名 display() 成员函数既虚函数,用来输出所有商品的信息。要求对“< <”和“>>”运算符进行重载,实现信息的输入输出。

(4) 菜单功能:添加(输入)记录,修改商品数量,浏览商品信息,按商品代号查找, 删除记录

  •       需求分析

1、通过c++程序实现商店仓库管理系统,可以正常运行并实现分类等操作。主要运用类和派生函数去实现。

2. 使用面向对象的程序设计进行分析,整个系统涉及两大类可操作,超市管理所用函数、商品。所以系统主要涉及两大类:超市的类、管理类。系统框架就是超市的类和商品类的定义;主函数中定义一个超市对象,循环显示主菜单并根据用户选择调用超市的类的相应方法(成员函数)。

#include <iostream>
#include <fstream>
#include <string.h>
#include <stdio.h>
#include <conio.h>//用getch();
using namespace std;


class Goods       
{
public:
	Goods()
		  {
		  }
	int kind;
	char name[20];                    
	char Id[20];


	float price;	
	
	int amount;		
	Goods * Next;
	friend ostream& operator<<(ostream& out,Goods& obj)
	{
		out<<obj.Id<<obj.name<<obj.amount<<obj.kind;
	}
	friend istream& operator>>(istream& in,Goods& obj)
	{
		in>>obj.Id>>obj.name>>obj.amount>>obj.kind;
	}
	void InputAll()
	{
		
		InputName();
		InputKind();
		InputID();
		InputOther();

	}
	void InputKind()
	{
		cout<<"\t\t请选择种类:";cin>>kind;
	}
	void InputName()
	{
		cout<<"\t\t请输入商品的名称:";  cin>>name;
	}
	void InputID()
	{	
		cout<<"\t\t请输入商品的编号:";  cin>>Id;
	}
	void InputBuyprice()
	{
		cout<<"\t\t请输入商品单价:"; cin>>price;
	}

	void InputAmount()
	{
		cout<<"\t\t请输入商品库存:"; cin>>amount;
	}
	void InputOther()
	{
		cout<<"\t\t请输入商品价格:"; cin>>price;
	    cout<<"\t\t请输入存货数量:"; cin>>amount;	
	}  
	void ReadFile(istream & in)
	{
		in>>name>>kind>>Id>>price>>amount;
	}
	void Show()
	{

		cout<<"商品名: "<<name<<endl<<"种类:"<<kind<<endl<<"编号: "<<Id<<endl<<"价格 "<<price<<endl<<"商品库存: "<<amount<<endl<<endl<<endl;
	}
};


class Goodsmanager : public Goods           
	{
	public:
		Goodsmanager();
		~Goodsmanager();
		void showMenu(int n);
		void Find();
		void Save();
		void ModifyItem();
		void RemoveItem();
		void Swap(Goods *,Goods *);
		void Sort();
		void delgoods();
		//void Chack();
		int ListCount();
		void Disp
  • 13
    点赞
  • 97
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值