欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C++课程设计---商品销售统计(共27页).doc

    • 资源ID:14081198       资源大小:757.50KB        全文页数:27页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C++课程设计---商品销售统计(共27页).doc

    精选优质文档-倾情为你奉上商品销售统计1. 需求和规格说明 1.1 问题描述编写商品销售统计程序,商品的信息有商品名、计量单位(重量或件)、单价。所有商品的信息事先已存入计算机,屏幕上显示所有商品的名称,选择商品名,输入商品计量单位(如重量、件数等),根据单价算出总价。客户一次可能购买多种商品,程序应计算出客户应付的钱款数。 1.2基本要求程序分为两个部分:第一部分用于输入商品的信息并允许修改和删除;第二部分实现销售统计。程序运行时由用户选择进入哪一部分功能,并能在运行时在两部分之间切换。第二部分运行时,首先显示所有商品名称及代码(商品数目较多时,应考虑分屏显示),用户输入商品代码及商品重量或件数,用户一次操作可输入若干商品的购买信息,然后输入一个特殊的代码(如“-1”)表示本次购物结束。此时,程序计算出应付钱款数并显示。2. 设计 2.1 文字描述先定义一个商品类GOODS,含有每种商品基本信息即商品名、计量单位(重量或件)、单价、商品总量皆被定义为私有数据成员;公有成员部分有该类构造函数以及其他友元函数。为了完成程序基本要求,采用嵌套系统思想,即先构造一个总的系统商品销售统计工程,通过switch语句可选择进入其下面两个子系统商品信息管理系统和商品销售系统,以完成程序要求的两个部分的功能。其中,每个子系统又可根据switch语句进行选择操作,并能实现在两个子系统之间的切换。 2.2 图示3.用户手册根据提示选择操作即可,具体为:(1) 程序运行时,首先要求初始化商品信息,即需添加销售的商品名称、单价等;(2) 根据需求选择进入商品信息管理系统或者商品销售系统,其中前者可进行的操作有:录入新商品信息、修改商品信息、删除商品信息等,后者为用户提供购买商品功能,只需根据提示操作即可;注意:请输入与程序要求相应的选择以及正确的格式,不要超出程序给定的范围!4. 附录 源代码#include<iostream>#include<string>#include<fstream>using namespace 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(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.商品信息管理系统(从属于商品销售统计工程)friend 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=0;i<s;i+)if(goods1i.name!="0")m+;else if(goods1i.name="0")s=m;for(j=m;j<n;j+)cout<<" _ "<<endl;cout<<">>>请输入第"<<j+1<<"种商品的名称:_" cin>>goods1j.name;cout<<endl; cout<<">>>请输入第"<<j+1<<"种商品的计量单位:_" cin>>goods1j.unit;cout<<endl; cout<<">>>请输入第"<<j+1<<"种商品的单价(元):_" cin>>goods1j.price_per_unit;cout<<endl;cout<<">>>请输入第"<<j+1<<"种商品的数量:_" cin>>goods1j.amount;cout<<" _ "<<endl;cout<<endl;cout<<"_继续录入商品信息?(y/n)_"cin>>l;cout<<endl;if(l="n"|l="N")n=j;else if(l="y"|l="Y");cout<<"_商品信息录入完成!"<<endl<<endl;cout<<" _ "<<endl;return;void Message_modify(GOODS goods2,int size) /底层函数:修改商品信息函数(从属于商品信息管理系统)if(goods20.name="0")cout<<"Caution:当前无商品信息,请返回更新!(y/n)_"string c;cin>>c;cout<<" _ "<<endl;cout<<endl;if(c="y"|c="Y")Goods_Message_Manage(goods2,size);WORK(goods2,size);else cout<<">>>>>>>>>>>>>>>>>>>>>>>>>>> 谢谢使用,祝您愉快!再见!<<<<<<<<<<<<<<<<<<<<<<<<<<"<<endl;exit(0);string p,q;int n;string unit;string name;double price;double amount;int choice2;dodocout<<" -商品信息列表- "<<endl<<endl; cout<<"t商品编号t商品名称t商品单价t商品余量"<<endl<<endl; int i,m=0; int s=size; for(i=0;i<s;i+)if(goods2i.name!="0")m+; else if(goods2i.name="0")s=m; for(i=0;i<m;i+) cout<<"t"<<i+1<<"."<<"t"<<"t"<<goods2i.name<<"t"<<goods2i.price_per_unit<<"元"<<"/"<<goods2i.unit<<"t"<<goods2i.amount<<goods2i.unit<<endl<<endl;cout<<" _ "<<endl; cout<<">>>请输入您想修改信息的商品编号:_"/ int n; cin>>n;cout<<" _ "<<endl;cout<<endl; cout<<"_您想修改信息的商品为:"<<n<<"."<<goods2n-1.name<<"(y/n)_"/ string p; cin>>p;cout<<endl; if(p="y"|p="Y") cout<<" _ "<<endl;docout<<"1.修改商品名称"<<endl<<endl; cout<<"2.修改商品计量单位"<<endl<<endl; cout<<"3.修改商品单价(元)"<<endl<<endl; cout<<"4.修改商品数量"<<endl<<endl;cout<<" _ "<<endl; cout<<">>>请输入您的选择(1-4):_" cin>>choice2; cout<<endl; switch(choice2) case 1: cout<<">>>请输入"<<n<<"号商品"<<goods2n-1.name<<"的名称:_"/ ! string name; cin>>name; goods2n-1.name=name; break; case 2: cout<<">>>请输入"<<n<<"号商品"<<goods2n-1.name<<"的计量单位:_"/! string unit;cin>>unit;goods2n-1.unit=unit;break;case 3:cout<<">>>请输入"<<n<<"号商品"<<goods2n-1.name<<"的单价:_"/! double price;cin>>price;goods2n-1.price_per_unit=price;break;case 4:cout<<">>>请输入"<<n<<"号商品"<<goods2n-1.name<<"的数量:_"/! int num;cin>>amount;goods2n-1.amount=amount;break;default:cout<<"Caution:对不起,输入有误,请从新输入!"break;while(choice2!=1&&choice2!=2&&choice2!=3&&choice2!=4);while(p="n"|p="N");cout<<" _ "<<endl;cout<<"_继续修改商品信息(y/n)?_"/ string q; cin>>q;cout<<endl;while(q="y"|q="Y");cout<<"_商品信息修改完成! "cout<<" _ "<<endl;return;void sort(GOODS array,int size) /排序函数,使得信息为空的商品类数组元素沉底,不为空的排在前面(被"删除商品信息函数"调用)int i,j;GOODS temp;for(i=0;i<size-1;i+)for(j=0;j<size-1-i;j+)if(arrayj.name="0"&&arrayj+1.name!="0")temp=arrayj;arrayj=arrayj+1;arrayj+1=temp;return;void Message_delete(GOODS goods3,int size) /底层函数:删除商品信息函数(从属于商品信息管理系统)if(goods30.name="0")cout<<"Caution:对不起,当前无商品信息,请返回更新!(y/n)_"string c;cin>>c;cout<<" _ "<<endl;cout<<endl;if(c="y"|c="Y")Goods_Message_Manage(goods3,size);WORK(goods3,size);else cout<<">>>>>>>>>>>>>>>>>>>>>>>>>>> 谢谢使用,祝您愉快!再见!<<<<<<<<<<<<<<<<<<<<<<<<<<"<<endl;exit(0);string p,q;int n;string unit;/double price;dodocout<<" -商品信息列表- "<<endl<<endl; cout<<"t商品编号t商品名称t商品单价t商品余量"<<endl<<endl; int i,m=0; int s=size; for(i=0;i<s;i+)if(goods3i.name!="0")m+; else if(goods3i.name="0")s=m; for(i=0;i<m;i+) cout<<"t"<<i+1<<"t"<<"t"<<goods3i.name<<"t"<<goods3i.price_per_unit<<"元"<<"/"<<goods3i.unit<<"t"<<goods3i.amount<<goods3i.unit<<endl<<endl;cout<<" _ "<<endl;cout<<">>>请输入您想删除信息的商品编号:_"/ int n; cin>>n;cout<<endl; cout<<"_您想删除信息的商品为:"<<n<<"."<<goods3n-1.name<<"(y/n)_"/ string p; cin>>p;cout<<endl; if(p="y"|p="Y")goods3n-1.name="0"goods3n-1.unit="0" goods3n-1.price_per_unit=0.0;goods3n-1.amount=0;cout<<" _ "<<endl;while(p="n"|p="N");cout<<"_继续删除商品信息(y/n)?_"/ string q; cin>>q;cout<<endl;while(q="y"|q="Y");cout<<"_商品信息删除完成! "cout<<" _ "<<endl;sort(goods3,size);return;void Goods_Message_Manage(GOODS Goods1,int size) /中层函数:M.商品信息管理系统(从属于商品销售统计工程)int choice1;docout<<" "<<endl;cout<<" "<<endl;cout<<" 商品信息管理系统 "<<endl;cout<<" "<<endl;cout<<" "<<endl<<endl;cout<<" >>>>>>>>>>>>>>>>>>>>>> 请 选 择 您 要 执 行 的 操 作 <<<<<<<<<<<<<<<<<<<<< "<<endl<<endl;cout<<" 1.录入新商品信息 "<<endl;cout<<" 2.修改商品信息 "<<endl;cout<<" 3.删除商品信息 "<<endl; cout<<" 4.返回 "<<endl; cout<<" 0.退出 "cout<<" _ "<<endl; cout<<">>>请输入您的选择:(0-4)_"cin>>choice1;cout<<endl;switch(choice1)case 1:input_gds_mesg(Goods1,size);break;case 2: Message_modify(Goods1,size);break;case 3: Message_delete(Goods1,size);break;case 4:WORK(Goods1,size);break;case 0:cout<<">>>>>>>>>>>>>>>>>>>>>>>>>>> 谢谢使用,祝您愉快!再见!<<<<<<<<<<<<<<<<<<<<<<<<<<"<<endl;exit(0);break;default:cout<<"对不起,您的输入有误,请重新进行选择!"<<endl<<endl; break;while(choice1!=0&&choice1!=1&&choice1!=2&&choice1!=3&&choice1!=4);return;void Goods_Sale(GOODS Goods2,int size) /中层函数:S.商品销售系统(从属于商品销售统计工程)if(Goods20.name="0")cout<<"Caution:对不起,当前无商品信息,请返回更新!(y/n)_"string c;cin>>c;cout<<" _ "<<endl;cout<<endl;if(c="y"|c="Y")Goods_Message_Manage(Goods2,size);WORK(Goods2,size);else cout<<">>>>>>>>>>>>>>>>>>>>>>>>>>> 谢谢使用,祝您愉快!再见!<<<<<<<<<<<<<<<<<<<<<<<<<<"<<endl;exit(0);string p,q;int num1000,amount1000; /num存放所要购买商品的编号,amount存放购买的每种商品数量int j=0,f=0,r=0;string unit;double money=0.0;dodocout<<" _ "<<endl;cout<<" -商品信息列表- "<<endl<<endl; cout<<"t商品编号t商品名称t商品单价t商品余量"<<endl<<endl; int i,m=0; int s=size; for(i=0;i<s;i+)if(Goods2i.name!="0")m+; else if(Goods2i.name="0")s=m; for(i=0;i<m;i+) cout<<"t"<<i+1<<"t"<<"t"<<Goods2i.name<<"t"<<Goods2i.price_per_unit<<"元"<<"/"<<Goods2i.unit<<"t"<<Goods2i.amount<<Goods2i.unit<<endl<<endl;cout<<" _ "<<endl;cout<<">>>请输入您想购买的商品的编号(输入“0”结束):"<<endl;/ int numsize;for(j=0;numj-1!=0;j+)cout<<"-"cin>>numj;/do/cin>>numj;/j+;/while(numj-1!=0);cout<<"_您想购买的商品为:"<<endl<<endl;cout<<" _ "<<endl; cout<<"_商品编号t商品名称"<<endl<<endl;for(f=0;f<j-1;f+) if(numf!=0) cout<<numf<<"t"<<"t"<<Goods2numf-1.name<<endl<<endl;cout<<" _ "<<endl;cout<<"_确认(y/n)?_"/ string p; cin>>p;cout<<" _ "<<endl;cout<<endl; if(p="y"|p="Y")cout<<">>>请输入您想购买的商品数量:"<<endl<<endl;cout<<" _ "<<endl; cout<<"商品编号t商品名称t购买数量"<<endl<<endl;for(f=0,r=0;(f<j-1)&&(r<size);f+,r+)if(numf!=0)cout<<numf<<"t"<<"t"<<Goods2numf-1.name<<"t" cin>>amountr;Goods2numf-1.amount-=amountr;cout<<endl;cout<<" _ "<<endl;while(p="n"|p="N");cout<<"_您购买的商品信息如下:"<<endl<<endl;cout<<" _ "<<endl;cout<<"t商品编号t商品名称t商品单价t购买数量"<<endl<<endl;for(f=0,r=0;(f<j-1)&&(r<size);f+,r+) if(numf!=0)cout<<"t"<<numf<<"t"<<"t"<<Goods2numf-1.name<<"t"<<Goods2numf-1.price_per_unit<<"元"<<"/"<<Goods2numf-1.unit<<"t"<<amountr<<Goods2numf-1.unit<<endl<<endl;cout<<" _ "<<endl;for(f=0,r=0;(f<j-1)&&(r<size);f+,r+)if(numf!=0)money+=Goods2numf-1.price_per_unit*amountr;cout<<"_您一共应支付"<<money<<"元."<<endl<<endl;cout<<" _ "<<endl;cout<<"_继续购物(y/n)?_"/ string q; cin>>q;cout<<endl;while(q="y"|q="Y");cout<<" >>>>>>>>>>>>>>>>>>>>>>>>>>> 谢谢惠顾,欢迎再来!<<<<<<<<<<<<<<<<<<<<<<<<<< "<<endl<<endl; WORK(Goods2,size);void WORK(GOODS Goods,int size) /高层函数:商品销售统计工程docout<<">>>>>>>>>>>>>>>>>>>>>>>>> 请 选 择 您 要 执 行 的 操 作 <<<<<<<<<<<<<<<<<<<<<<<<"<<endl;cout<<" 1.商品信息管理系统 "<<endl; cout<<" 2.商品销售系统 "<<endl; cout<<" 0.退出 " cout<<" _ "<<endl;cout<<">>> 请输入您的选择:(0-2)_"cin>>choice;cout<<" _ "<<endl; switch(choice)c

    注意事项

    本文(C++课程设计---商品销售统计(共27页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开