1 / 22
文档名称:

C++课程设计---商品销售统计.doc

格式:doc   大小:758KB   页数:22页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

C++课程设计---商品销售统计.doc

上传人:tswng35 2021/5/12 文件大小:758 KB

下载得到文件列表

C++课程设计---商品销售统计.doc

文档介绍

文档介绍:商品销售统计
需求和规格说明
问题描述
编写商品销售统计程序,商品的信息有商品名、计量单位(重量或件)、单价。所有商品的信息事先已存入计算机,屏幕上显示所有商品的名称,选择商品名,输入商品计量单位(如重量、件数等),根据单价算出总价。客户一次可能购买多种商品,程序应计算出客户应付的钱款数。

程序分为两个部分:第一部分用于输入商品的信息并允许修改和删除;第二部分实现销售统计。程序运行时由用户选择进入哪一部分功能,并能在运行时在两部分之间切换。第二部分运行时,首先显示所有商品名称及代码(商品数目较多时,应考虑分屏显示),用户输入商品代码及商品重量或件数,用户一次操作可输入若干商品的购买信息,然后输入一个特殊的代码(如“-1”)表示本次购物结束。此时,程序计算出应付钱款数并显示。
设计
文字描述
先定义一个商品类GOODS,含有每种商品基本信息即商品名、计量单位(重量或件)、单价、商品总量皆被定义为私有数据成员;公有成员部分有该类构造函数以及其他友元函数。
为了完成程序基本要求,采用嵌套系统思想,即先构造一个总的系统——商品销售统计工程,通过switch语句可选择进入其下面两个子系统——商品信息管理系统和商品销售系统,以完成程序要求的两个部分的功能。其中,每个子系统又可根据switch语句进行选择操作,并能实现在两个子系统之间的切换。

图示

根据提示选择操作即可,具体为:
程序运行时,首先要求初始化商品信息,即需添加销售的商品名称、单价等;
根据需求选择进入商品信息管理系统或者商品销售系统,其中前者可进行的操作有:录入新商品信息、修改商品信息、删除商品信息等,后者为用户提供购买商品功能,只需根据提示操作即可;
注意:请输入与程序要求相应的选择以及正确的格式,不要超出程序给定的范围!
附录 源代码
#include<iostream>
#include<string>
#include<fstream>
using namespace std;
int choice;
class GOODS
{
private:
string name; //商品名
string unit; //计量单位
double price_per_unit; //单价
double amount; //商品总数
public:
GOODS(); //构造函数
//排序函数,使得信息为空的商品类数组元素沉底,不为空的排在前面(被"删除商品信息函数"调用)
friend void sort(GOODS array[],int size);
friend void input_gds_mesg(GOODS goods1[],int size); //底层函数:录入商品信息(从属于商品信息管理系统)
friend void Message_modify(GOODS goods2[],int size); //底层函数:修改商品信息(从属于商品信息管理系统)
friend void Message_delete(GOODS goods3[],int size); //底层函数:删除商品信息(从属于商品信息管理系统)

friend void Goods_Message_Manage(GOODS Goods1[],int size); //中层函数:(从属于商品销售统计工程)
friend void Goods_Sale(GOODS Goods2[],int size); //中层函数:(从属于商品销售统计工程)

friend void WORK(GOODS Goods[],int size); //高层函数:商品销售统计工程
};
GOODS::GOODS()
{
name="0";
unit="0";
price_per_unit=;
amount=0;
}
void input_gds_mesg(GOODS goods1[],int size) //底层函数:录入商品信息函数(从属于商品信息管理系统)
{
int i,j,m=0;
int s=size;
int n=size;
string l;
for(i=0;i<s;i++)
{
if(goods1[i].name!="0")m++;
else if(goods1[i].name=="0")s=m;
}
for(j=m