C++课程设计-商品销售统计.doc
《C++课程设计-商品销售统计.doc》由会员分享,可在线阅读,更多相关《C++课程设计-商品销售统计.doc(30页珍藏版)》请在三一文库上搜索。
1、商品销售统计1. 需求和规格说明1.1 问题描述 编写商品销售统计程序,商品的信息有商品名、计量单位(重量 或件)、单价。所有商品的信息事先已存入计算机,屏幕上显示所有 商品的名称,选择商品名,输入商品计量单位(如重量、件数等) , 根据单价算出总价。 客户一次可能购买多种商品, 程序应计算出客户 应付的钱款数。1.2 基本要求程序分为两个部分: 第一部分用于输入商品的信息并允许修改和 删除;第二部分实现销售统计。 程序运行时由用户选择进入哪一部分 功能,并能在运行时在两部分之间切换。第二部分运行时,首先显示 所有商品名称及代码(商品数目较多时,应考虑分屏显示) ,用户输 入商品代码及商品重量
2、或件数, 用户一次操作可输入若干商品的购买 信息,然后输入一个特殊的代码(如“ -1 ”)表示本次购物结束。此 时,程序计算出应付钱款数并显示。2. 设计2.1 文字描述先定义一个商品类 GOODS ,含有每种商品基本信息即商品名、 计量单位(重量或件) 、单价、商品总量皆被定义为私有数据成员; 公有成员部分有该类构造函数以及其他友元函数。为了完成程序基本要求, 采用嵌套系统思想, 即先构造一个总的 系统商品销售统计工程,通过 switch 语句可选择进入其下面两 个子系统商品信息管理系统和商品销售系统, 以完成程序要求的 两个部分的功能。其中,每个子系统又可根据 switch 语句进行选择
3、操作,并能实现在两个子系统之间的切换。2.2图示类名类别类型名称说明privatestri ngn ame商品名privatestri ngun it计量单位privatedoubleprice per un it单价privatedoubleamount商品总数publicGOODS)构造函数GOODSfriendviodsort()排序,使得信息为空的商品沉底friendviodin put gds mesg()底层函数:录入商品信息friendviodMessage modify()底层函数:修改商品信息friendviodMessage delete()底层函数:删除商品信息frien
4、dviodGoods Message Ma nage()中层函数:1.商品信息管理系统friendviodGoods Sale()中层函数:2.商品销售系统friendviodWORK()高层函数:商品销售统计工程3. 用户手册根据提示选择操作即可,具体为:(1)程序运行时,首先要求初始化商品信息,即需添加销售的商品名称、单价等;(2 )根据需求选择进入商品信息管理系统或者商品销售系统, 其中前者可进行的操作有:录入新商品信息、修改商品信息、删除商 品信息等,后者为用户提供购买商品功能,只需根据提示操作即可; 注意:请输入与程序要求相应的选择以及正确的格式,不要超出程序给定的范围!4. 附录源
5、代码#in clude#in clude#in cludeusing n amespace std;int choice;class GOODSprivate:string name; / 商品名string unit; / 计量单位double price_per_unit; / 单价double amount; / 商品总数public:GOODS(); / 构造函数/ 排序函数,使得信息为空的商品类数组元素沉底,不为空的排在前面(被 删除商品信息函数 调用)friend void sort(GOODS array,int size);friend void input_gds_mesg(
6、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); / 中层函数: 1.商品信息管理系统(从属于商品销售统计工程)fri
7、end void Goods_Sale(GOODS Goods2,int size); / 中层函数: 2.商品销售系统(从属于商品销售统计工程)friend void WORK(GOODS Goods,int size); / 高层函数:商品销 售统计工程;GOODS:GOODS()name=0;unit=0;price_per_unit=0.0;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
8、=0;is;i+)if(goods1i.name!=0)m+;else if(goods1i.name=0)s=m;for(j=m;jn;j+)cout录入商品信endl;cout 请输入第 j+1goods1j.name;种商品的名称:endl;coutendl;cout 请输入第 j+1goods1j.unit;coutendl;cout 请输入第 j+1goods1j.price_per_unit;种商品的计量单位:种商品的单价(元)coutendl;cout 请输入第 j+1goods1j.amount;coutcoutendl;修改商品信谢谢使用,coutl;coutendl;if(
9、l=n|l=N)n=j;else if(l=y|l=Y);cout_ 商品信息录入完成! endlendl; coutendl;return;void Message_modify(GOODS goods2,int size) / 底层函数: 息函数(从属于商品信息管理系统)if(goods20.name=0)coutc;coutendl;coutendl;if(c=y|c=Y)Goods_Message_Manage(goods2,size);WORK(goods2,size);elsecout 祝您愉快!再见! endl;exit(0);string p,q;int n;string un
10、it;string name;double price;double amount;int choice2;dodocout 商 品 信 息 列 表 endlendl;coutvvt 商品编号t商品名称t商品单价t商品余量 endlendl;int i,m=0;int s=size;for(i=0;is;i+)if(goods2i.name!=0)m+;else if(goods2i.name=0)s=m; for(i=0;im;i+)coutti+1.ttgoods2i.nametgoods2i.price_per_unit元/goods2i.unittgoods2i.amountgoods
11、2i.unit endlendl; coutendl;cout 请输入您想修改信息的商品编号: _;/int n; cinn; coutendl;coutendl;cout_ 您 想 修 改 信 息 的 商 品 为 :n.goods2n-1.namep;coutendl;if(p=y|p=Y) coutendl;docout1. 修改商品名称 endlendl;cout2. 修改商品计量单位 endlendl;cout3. 修改商品单价(元) endlendl;cout4. 修改商品数量 endlendl;coutendl;cout 请输入您的选择( 1-4 ):_; cinchoice2;c
12、outendl;switch(choice2) case 1:cout 请 输 入 n 号 商 品 goods2n-1.namename;goods2n-1.name=name;break; case 2: cout 请 输 入 n 号 商 品 goods2n-1.nameunit;goods2n-1.unit=unit;break; case 3:cout 请 输 入 n 号 商 品 goods2n-1.nameprice;goods2n-1.price_per_unit=price; break;case 4: cout 请 输 入 n 号 商 品 goods2n-1.nameamount
13、;goods2n-1.amount=amount;break;default:coutCaution: 对不起,输入有误,请从新输入! ; break;while(choice2!=1&choice2!=2&choice2!=3&choice2!=4);while(p=n|p=N);coutendl;coutq; coutendl;while(q=y|q=Y);cout_商 品 信 息 修 改 完 成 !Jcout endl;return;void sort(GOODS array,int size)/ 排序函数,使得信息为空的商品类数组元素沉底,不为空的排在前面(被 删除商品信息函数 调用)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 课程设计 商品 销售 统计
链接地址:https://www.31doc.com/p-13981724.html