资源描述
编号:32
河北工业大学计算机软件技术基础(VC)课程设计报告
学院 机械工程学院 班级 机设105 姓名 大鬼 学号_100473 成绩 __ ____
一、题目:
超市货物管理系统(32)
二、设计思路
1、总体设计
设计的程序能够录入超市的货物信息,包括货物进出价格、销售员信息等。
能够对数据进行计算、能够使用户很方便的获取超市的详细信息,对于使用者管理超市提供了方便!
创新之处:界面中添加了菜单,用户可以重复使用!
使用do while语句,结合switch case语句实现了菜单功能。
三、程序清单
如果是使用一个文件完成的程序,只需列出程序代码。
#include<iostream.h>
struct product//商品数据结构
{
int pro_num;//商品代号
char pro_name[20];//商品名
double inprice;//进货价格
double outprice;//销售价格
double profit;//月利润
int sale_num;//销售数量
};
struct salespeople//销售人员的数据结构
{
int peo_num;//销售员代号
int xiaoliang[5];//对各种商品的销量
double ticheng[5];//各种商品的提成及总提成
};
void main()
{
int i,j;
product pro[5];//五种商品
salespeople s_peo[3];//三位销售员
cout<<"请输入商品的信息:\n";
cout<<"商品代号 商品名 进货价格 销售价格\n";
for(i=0;i<5;i++)
{
cin>>pro[i].pro_num>>pro[i].pro_name>>pro[i].inprice>>pro[i].outprice;
}
cout<<" 请输入销售员信息\n";
cout<<"销售员代号 5种商品的销售量\n";
for(i=0;i<3;i++)
{cin>>s_peo[i].peo_num;
for(j=0;j<5;j++)
cin>>s_peo[i].xiaoliang[j];}
pro[0].sale_num=0;
pro[1].sale_num=0;
pro[2].sale_num=0;
pro[3].sale_num=0;
pro[4].sale_num=0;
for(i=0;i<5;i++)//计算月销量
for(j=0;j<3;j++)
pro[i].sale_num+=s_peo[j].xiaoliang[i];
pro[i].profit=0;
for(i=0;i<5;i++)//计算月利润
pro[i].profit=(pro[i].outprice-pro[i].inprice)*pro[i].sale_num;
s_peo[i].ticheng[j]=0;
for(i=0;i<3;i++)//计算销售员对于每种商品的提成
for(j=0;j<5;j++)
s_peo[i].ticheng[j]=s_peo[i].xiaoliang[j]*(pro[i].outprice-
pro[i].inprice)*5/100;
double ticheng[3];
ticheng[0]=0;
ticheng[1]=0;
ticheng[2]=0;
for(i=0;i<3;i++)
for(j=0;j<5;j++)
ticheng[i]+=s_peo[i].ticheng[j];
int sr;
do//实现循环菜单功能
{
cout<<"请选择您的查看项目\n";
cout<<"1.查看统计报表。\n";
cout<<"2.查看促销员排序结果。\n";
cout<<"3.查看商品排序结果。\n";
cout<<"4.退出程序。\n";
cout<<"---------请选择------\n";
cin>>sr;
switch(sr)
{
case 1:cout<<"============================统计报表=============================\n";
cout<<"-----------------------------商品货单----------------------\n";
cout<<"商品号 商品名 进货价格 销售价格 月利润\n";
for(i=0;i<5;i++)
cout<<pro[i].pro_num<<" "<<pro[i].pro_name<<" "<<pro[i].inprice<<" "
<<pro[i].outprice<<" "<<pro[i].profit<<endl;
cout<<"==========销售清单==============\n";
cout<<"促销员代号 商品代号 销售量 提成\n";
for(i=0;i<3;i++)
for(j=0;j<5;j++)
cout<<s_peo[i].peo_num<<" "<<pro[j].pro_num<<" "<<s_peo[i].xiaoliang[j]<<" "<<s_peo[i].ticheng[j]<<endl;
cout<<"===========促销清单=========\n";
cout<<"促销员代号 提成\n";
for(i=0;i<3;i++)
cout<<s_peo[i].peo_num<<" "<<ticheng[i]<<endl;
break;
case 2:cout<<"************促销员排序结果************\n";
cout<<"促销员代号 提成\n";
double t;int m;
for(i=0;i<3;i++)
for(j=0;j<2-i;j++)
if(ticheng[j]<ticheng[j+1])
{
t=ticheng[j];
m=s_peo[j].peo_num;
ticheng[j]=ticheng[j+1];
s_peo[j].peo_num=s_peo[j+1].peo_num;
s_peo[j+1].peo_num=m;
ticheng[j+1]=t;
}
for(i=0;i<3;i++)
cout<<s_peo[i].peo_num<<" "<<ticheng[i]<<endl;
break;
case 3:cout<<"============商品排序结果==============\n";
int xh;
double lr;
for(i=0;i<5;i++)
for(j=0;j<5-1-i;j++)
if(pro[j].profit<pro[j+1].profit)
{
xh=pro[j].pro_num;
lr=pro[j].profit;
pro[j].pro_num=pro[j+1].pro_num;
pro[j].profit=pro[j+1].profit;
pro[j+1].pro_num=xh;
pro[j+1].profit=lr;
}
cout<<"商品号 月利润\n";
for(i=0;i<5;i++)
cout<<pro[i].pro_num<<" "<<pro[i].profit<<endl;
break;
case 4:0;
break;
default:cout<<"****请重新输入*****\n";
}
}while(sr!=4);
}
录入商品的信息截图:
程序执行后的截图:
(说明:程序清单中一定要有注释。程序清单部分的行间距设为1行即可)
四、对该设计题目有何更完善的方案
1、对自己完成程序进行自我评价。
使用了数据结构,使得处理超市货物管理方便简洁,使用了数组,在
2、对课题提出更完善的方案
五、收获及心得体会
1、通过本次课程设计,自己在哪些方面的能力有所提高。
通过本次课程设计我对数据结构进行了详细的学习,掌握了数据结构的应用,使得我在处理复杂数据的时候得心应手,更加熟练的使用冒泡法排序、do while语句等。
2、 收获和心得体会。
课程设计是我对C++有了更深的了解,对于处理实际应用问题的能力有了提高,是我加深了对程序设计的理解。
在课程设计的过程中,确实遇到了困难,通过查阅课本例题,获得设计思路。一遍遍的调试使得错误不断减少,输入数据后检验程序的准确性时发现了错误,由于编译的时候没有出现错误,使得我再检查错误原因非常难。通过不断的检验,一次次的测试,每条语句认真分析,最终发现了错误。通过课程设计,体会到了品尝劳动果实的快乐,自己的付出的到了回报。
日期: 2011年9月10日
3、通过活动,使学生养成博览群书的好习惯。
B比率分析法和比较分析法不能测算出各因素的影响程度。√
C采用约当产量比例法,分配原材料费用与分配加工费用所用的完工率都是一致的。X
C采用直接分配法分配辅助生产费用时,应考虑各辅助生产车间之间相互提供产品或劳务的情况。错
C产品的实际生产成本包括废品损失和停工损失。√
C成本报表是对外报告的会计报表。×
C成本分析的首要程序是发现问题、分析原因。×
C成本会计的对象是指成本核算。×
C成本计算的辅助方法一般应与基本方法结合使用而不单独使用。√
C成本计算方法中的最基本的方法是分步法。X
D当车间生产多种产品时,“废品损失”、“停工损失”的借方余额,月末均直接记入该产品的产品成本
中。×
D定额法是为了简化成本计算而采用的一种成本计算方法。×
F“废品损失”账户月末没有余额。√
F废品损失是指在生产过程中发现和入库后发现的不可修复废品的生产成本和可修复废品的修复费用。X
F分步法的一个重要特点是各步骤之间要进行成本结转。(√)
G各月末在产品数量变化不大的产品,可不计算月末在产品成本。错
G工资费用就是成本项目。(×)
G归集在基本生产车间的制造费用最后均应分配计入产品成本中。对
J计算计时工资费用,应以考勤记录中的工作时间记录为依据。(√)
J简化的分批法就是不计算在产品成本的分批法。(×)
J简化分批法是不分批计算在产品成本的方法。对
J加班加点工资既可能是直接计人费用,又可能是间接计人费用。√
J接生产工艺过程的特点,工业企业的生产可分为大量生产、成批生产和单件生产三种,X
K可修复废品是指技术上可以修复使用的废品。错
K可修复废品是指经过修理可以使用,而不管修复费用在经济上是否合算的废品。X
P品种法只适用于大量大批的单步骤生产的企业。×
Q企业的制造费用一定要通过“制造费用”科目核算。X
Q企业职工的医药费、医务部门、职工浴室等部门职工的工资,均应通过“应付工资”科目核算。X
S生产车间耗用的材料,全部计入“直接材料”成本项目。X
S适应生产特点和管理要求,采用适当的成本计算方法,是成本核算的基础工作。(×)
W完工产品费用等于月初在产品费用加本月生产费用减月末在产品费用。对
Y“预提费用”可能出现借方余额,其性质属于资产,实际上是待摊费用。对
Y引起资产和负债同时减少的支出是费用性支出。X
Y以应付票据去偿付购买材料的费用,是成本性支出。X
Y原材料分工序一次投入与原材料在每道工序陆续投入,其完工率的计算方法是完全一致的。X
Y运用连环替代法进行分析,即使随意改变各构成因素的替换顺序,各因素的影响结果加总后仍等于指标的总差异,因此更换各因索替换顺序,不会影响分析的结果。(×)
Z在产品品种规格繁多的情况下,应该采用分类法计算产品成本。对
Z直接生产费用就是直接计人费用。X
Z逐步结转分步法也称为计列半成品分步法。√
A按年度计划分配率分配制造费用,“制造费用”账户月末(可能有月末余额/可能有借方余额/可能有贷方余额/可能无月末余额)。
A按年度计划分配率分配制造费用的方法适用于(季节性生产企业)
第9页/共9 页
展开阅读全文