编号:95991282
类型:共享资源
大小:184.50KB
格式:DOC
上传时间:2020-09-19
上传人:伐***
认证信息
机构认证
宁夏凯米世纪网络科技有限公司
宁夏
统一社会信用代码/组织机构代码
91640100MA774ECW4K
IP属地:宁夏
12
积分
- 关 键 词:
-
课程设计
商品
管理
系统
- 资源描述:
-
.
淮 海 工 学 院 计 算 机 工 程 学 院
课程设计报告
设计名称: c++程序设计课程设计
姓 名: 学 号:
专业班级:
系 (院):
设计时间:
设计地点:
成绩:
指导教师评语:
签名:
年 月 日
1、课程设计目的
c++程序设计课程设计是计算机科学与技术专业重要的实践性教学环节之一,本次设计结合实际应用的要求,使课程设计既覆盖c++的知识点,又接近工程实际需要。目的是通过课程设计的综合训练,培养学生实际分析问题、解决问题的能力,以及编程和动手能力,最终目标是通过课程设计这种形式,帮助学生系统掌握c++程序设计这门课程的主要内容,养成良好的编程习惯,更好的完成教学任务。
2、课程设计任务与要求:
本次课程设计利用《c++程序设计》课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。
要求:
1、对系统进行功能需求分析
2、设计合理的数据结构和系统框架
3、编程简练,程序功能齐全,能正确运行
4、说明书、流程图要清楚
5、课题完成后必须按要求提交课程设计报告
任务:
设计一个商品销售管理系统。
运用c++语言描述商品类、供应商类。要求设计中综合运用c++基础知识,利用指针对商品、供应商链表进行处理,方便快捷的进行增删改,充分利用友元来处理两个类之间的关系,理解面向对象程序设计的核心的概念。
实现功能:
(1)建立商品类、供应商类
(2)商品、供应商信息的初始化
(3)商品信息的添加、修改、删除、 查找
(4)供应商信息的添加、修改、删除、查找
(5)商品信息、供应商信息的输出
备注:将商品、供应商保存为文件,能够写入与读出。
概要设计
(1) 需求分析:
要实现对商品,供应商信息的添加、修改、删除、查找,并输出信息,能够方便快捷,并有用户能详细清楚的操作指南。
(2)模块说明:本次程序设计中,需要设计10个模块,分别是添加、修改、删除、查找、输出商品信息和供应商信息,一共4个类:分别是商品类、商品数据类、供应商类、供应商数据类。通过几个switch语句实现用户选择功能。
主要函数流程图:
(3)详细设计
商品数据类的设计
class spdata
{
private:
char name[100];
int count;
float iprice;
float oprice;
char gys[20];
public:
int id;
int getid()
char *getname()
int getcount()
float getbuy()
float getsale()
char *getgys()
void setid(int n)
void setname(char na[])
void setcount(int c)
void setbuy(float i)
void setsale(float o)
void setgys(char g[])
};
商品类的设计
class commodity
{
private:
spdata t[50];
int n;
public:
void newfile()
{
int id;
int n;
char name[50];
int count;
float iprice;
float oprice;
char gys[20];
if(n<0)
n=0;
int i;
spdata temp;
for(;;n++)
{
cout<<"商品编号:";
cin>>id;
if(id==-1)
break;
t[n].setid(id);
cout<<"商品名:";
cin>>name;
t[n].setname(name);
cout<<"库存量:";
cin>>count;
t[n].setcount(count);
cout<<"进价:";
cin>>iprice;
t[n].setbuy(iprice);
cout<<"售价:";
cin>>oprice;
t[n].setsale(oprice);
cout<<"供应商:";
cin>>gys;
t[n].setgys(gys);
cout<<"若商品添加完毕,请按-1退出添加!"<t[n].getid())
{
temp=t[i];
t[i]=t[n];
t[n]=temp;
}
}
}
}
void showdata(int i)
{
spdata t,*p;
p=&t;
cout<getid()
<getname()
<getcount()
<getbuy()
<getsale()
<getgys()<0 )
showdata(i);
cout<<"商品种类:"<>name;
t[temp].setname(name);
cout<<"库存量:";
cin>>count;
t[temp].setcount(count);
cout<<"进价:";
cin>>iprice;
t[temp].setbuy(iprice);
cout<<"售价:";
cin>>oprice;
t[temp].setsale(oprice);
cout<<"供应商:";
cin>>gys;
t[temp].setgys(gys);
}
}
int search()
{ int id;
cout<<"id:";
cin>>id;
int low=0,mid,high=n-1;
while(low<=high)
{
mid=(low+high)/2;
if(t[mid].getid()==id)
return mid;
else if(t[mid].getid()>id)
high=mid-1;
else low=mid+1;
}
return -1;
}
void remove()
{ spdata t[10];
cout<<"请输入要删除的商品编号"<>id;
fstream file("商品清单.txt",ios::in|ios::out|ios::binary);
for(int u=0;u<5;u++)
((char*)&t[u],sizeof(t[u]));
for(int v=0;v<5;v++)
{
if(t[v].id==id)
continue;
else
((char*)&t[v],sizeof(t[v]));
cout<<"该商品被删除"<>id;
if(id==-1)
break;
t[n].setid();
cout<<"供应商名称:";
t[n].setname(name);
cout<<"供应商电话:";
t[n].setphone( );
cout<<"若供应商添加完毕,请按-1退出添加!"<getid()
<getname()
<getphone()
<>id;
int low=0,mid,high=n-1;
while(low<=high)
{
mid=(low+high)/2;
if(t[mid].getid()==id)
return mid;
else if(t[mid].getid()>id)
high=mid-1;
else low=mid+1;
}
return -1;
}
void xiugai()
{
char name[100];
int phone;
int temp;
temp=search();
if(temp==-1)
{
cout<<"cannot find the gys!"<>name;
t[temp].setname(name);
cout<<"供应商手机号:";
cin>>phone;
t[temp].setphone();
}
}
void remove()
{ gysdata g[10];
cout<<"请输入要删除的供应商编号"<>id;
fstream file("",ios::in|ios::out|ios::binary);
for(int u=0;u<5;u++)
((char*)&g[u],sizeof(g[u]));
for(int v=0;v<5;v++)
{
if(g[v].id==id)
continue;
else
((char*)&g[v],sizeof(g[v]));
cout<<"该供应商被删除"<>x;
switch(x)
{
case 1:
{
menu2();
commodity com;
int c;
for(;;)
{
cout<<" 请选择:";
cin>>c;
switch(c)
{
case 1:();break;
case 2:();break;
case 3:();break;
case 4:;break;
case 5:();break;
case 6:menu1();break;
case 0:{
cout<<" ***********谢谢使用********** "<>c;
switch(c)
{
case 1:();break;
case 2:();break;
case 3:();break;
case 4:();break;
case 5:();break;
case 6:menu1();break;
case 0:{
cout<<" ***********谢谢使用********** "<
#include<>
#include<>
#include<>
#define mfname 100
#include<>
#include<>
#include<>
#include<>
class spdata
{
private:
char name[100];
int count;
float iprice;
float oprice;
char gys[20];
public:
int id;
int getid()
{
return id;
}
char *getname()
{
return name;
}
int getcount()
{
return count;
}
float getbuy()
{
return iprice;
}
float getsale()
{
return oprice;
}
char *getgys()
{
return gys;
}
void setid(int n)
{
id=n;
}
void setname(char na[])
{
strcpy(name,na);
}
void setcount(int c)
{
count=c;
}
void setbuy(float i)
{
iprice=i;
}
void setsale(float o)
{
oprice=o;
}
void setgys(char g[])
{
strcpy(gys,g);
}
};
class gysdata
{
private:
char name[100];
int phone;
public:
int id;
int getid()
{
return id;
}
char *getname()
{
return name;
}
int getphone()
{
return phone;
}
void setid()
{
cin>>id;
}
void setname(char na[])
{
strcpy(name,na);
}
void setphone()
{
cin>>phone;
}
};
class commodity
{
private:
spdata t[50];
int n;
public:
void newfile()
{
int id;
int n;
char name[50];
int count;
float iprice;
float oprice;
char gys[20];
if(n<0)
n=0;
int i;
spdata temp;
for(;;n++)
{
cout<<"商品编号:";
cin>>id;
if(id==-1)
break;
t[n].setid(id);
cout<<"商品名:";
cin>>name;
t[n].setname(name);
cout<<"库存量:";
cin>>count;
t[n].setcount(count);
cout<<"进价:";
cin>>iprice;
t[n].setbuy(iprice);
cout<<"售价:";
cin>>oprice;
t[n].setsale(oprice);
cout<<"供应商:";
cin>>gys;
t[n].setgys(gys);
cout<<"若商品添加完毕,请按-1退出添加!"<t[n].getid())
{
temp=t[i];
t[i]=t[n];
t[n]=temp;
}
}
}
}
void showdata(int i)
{
spdata t,*p;
p=&t;
cout<getid()
<getname()
<getcount()
<getbuy()
<getsale()
<getgys()<0 )
showdata(i);
cout<<"商品种类:"<>name;
t[temp].setname(name);
cout<<"库存量:";
cin>>count;
t[temp].setcount(count);
cout<<"进价:";
cin>>iprice;
t[temp].setbuy(iprice);
cout<<"售价:";
cin>>oprice;
t[temp].setsale(oprice);
cout<<"供应商:";
cin>>gys;
t[temp].setgys(gys);
}
}
int search()
{ int id;
cout<<"id:";
cin>>id;
int low=0,mid,high=n-1;
while(low<=high)
{
mid=(low+high)/2;
if(t[mid].getid()==id)
return mid;
else if(t[mid].getid()>id)
high=mid-1;
else low=mid+1;
}
return -1;
}
void remove()
{ spdata t[10];
cout<<"请输入要删除的商品编号"<>id;
fstream file("商品清单.txt",ios::in|ios::out|ios::binary);
for(int u=0;u<5;u++)
((char*)&t[u],sizeof(t[u]));
for(int v=0;v<5;v++)
{
if(t[v].id==id)
continue;
else
((char*)&t[v],sizeof(t[v]));
cout<<"该商品被删除"<>id;
if(id==-1)
break;
t[n].setid();
cout<<"供应商名称:";
t[n].setname(name);
cout<<"供应商电话:";
t[n].setphone( );
cout<<"若供应商添加完毕,请按-1退出添加!"<getid()
<getname()
<getphone()
<>id;
int low=0,mid,high=n-1;
while(low<=high)
{
mid=(low+high)/2;
if(t[mid].getid()==id)
return mid;
else if(t[mid].getid()>id)
high=mid-1;
else low=mid+1;
}
return -1;
}
void xiugai()
{
char name[100];
int phone;
int temp;
temp=search();
if(temp==-1)
{
cout<<"cannot find the gys!"<>name;
t[temp].setname(name);
cout<<"供应商手机号:";
cin>>phone;
t[temp].setphone();
}
}
void remove()
{ gysdata g[10];
cout<<"请输入要删除的供应商编号"<>id;
fstream file("",ios::in|ios::out|ios::binary);
for(int u=0;u<5;u++)
((char*)&g[u],sizeof(g[u]));
for(int v=0;v<5;v++)
{
if(g[v].id==id)
continue;
else
((char*)&g[v],sizeof(g[v]));
cout<<"该供应商被删除"<
- 内容简介:
-
-
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。