您好,欢迎来到六九路网。
搜索
您的当前位置:首页c++课程设计商品管理系统

c++课程设计商品管理系统

来源:六九路网
.

淮海工学院计算机工程学院

课程设计报告

设计名称: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)详细设计 商品数据类的设计 classspData { private: charname[100]; intcount; floatiprice; floatoprice; chargys[20]; public: intid; intgetId() char*getName() intgetCount() floatgetBuy() floatgetSale() char*getGys() voidsetId(intn) voidsetName(charna[]) voidsetCount(intc) voidsetBuy(floati) voidsetSale(floato) voidsetGys(charg[]) }; 商品类的设计 classCommodity { private: spDatat[50]; intn; public: voidnewFile() { intid; intn; charname[50]; intcount; floatiprice; floatoprice; chargys[20]; if(n<0) n=0; inti; spDatatemp; 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; } } } } voidshowData(inti) { spDatat,*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); } } intsearch() {intid; cout<<\"id:\"; cin>>id; intlow=0,mid,high=n-1; while(low<=high) { mid=(low+high)/2; if(t[mid].getId()==id) returnmid; elseif(t[mid].getId()>id) high=mid-1; elselow=mid+1; } return-1; } voidremove() {spDatat[10]; cout<<\"请输入要删除的商品编号\"<>id; fstreamfile(\"商品清单.txt\ for(intu=0;u<5;u++) file.read((char*)&t[u],sizeof(t[u])); for(intv=0;v<5;v++) { if(t[v].id==id) continue; else file.write((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; intlow=0,mid,high=n-1; while(low<=high) { mid=(low+high)/2; if(t[mid].getid()==id) returnmid; elseif(t[mid].getid()>id) high=mid-1; elselow=mid+1; } return-1; } voidxiugai() { charname[100]; intphone; inttemp; temp=search(); if(temp==-1) { cout<<\"cannotfindthegys!\"<>name; t[temp].setname(name); cout<<\"供应商手机号:\"; cin>>phone; t[temp].setphone(); } } voidremove() {gysDatag[10]; cout<<\"请输入要删除的供应商编号\"<>id; fstreamfile(\"gys.txt\ for(intu=0;u<5;u++) file.read((char*)&g[u],sizeof(g[u])); for(intv=0;v<5;v++) { if(g[v].id==id) continue; else file.write((char*)&g[v],sizeof(g[v])); cout<<\"该供应商被删除\"<>x; switch(x) { case1: { menu2(); Commoditycom; intc; for(;;) { cout<<\"请选择:\"; cin>>c; switch(c) { case1:com.newFile();break; case2:com.save();break; case3:com.remove();break; case4:com.search;break; case5:com.showData();break; case6:menu1();break; case0:{ cout<<\"***********谢谢使用**********\"<>c; switch(c) { case1:gys.newFile();break; case2:gys.save();break; case3:gys.remove();break; case4:gys.showData();break; case5:gys.search();break; case6:menu1();break; case0:{ cout<<\"***********谢谢使用**********\"< #include #include #include #defineMfname100 #include #include #include #include classspData { private: charname[100]; intcount; floatiprice; floatoprice; chargys[20]; public: intid; intgetId() { returnid; } char*getName() { returnname; } intgetCount() { returncount; } floatgetBuy() { returniprice; } floatgetSale() { returnoprice; } char*getGys() { returngys; } voidsetId(intn) { id=n; } voidsetName(charna[]) { strcpy(name,na); } voidsetCount(intc) { count=c; } voidsetBuy(floati) { iprice=i; } voidsetSale(floato) { oprice=o; } voidsetGys(charg[]) { strcpy(gys,g); } }; classgysData { private: charname[100]; intphone; public: intid; intgetid() { returnid; } char*getname() { returnname; } intgetphone() { returnphone; } voidsetid() { cin>>id; } voidsetname(charna[]) { strcpy(name,na); } voidsetphone() { cin>>phone; } }; classCommodity { private: spDatat[50]; intn; public: voidnewFile() { intid; intn; charname[50]; intcount; floatiprice; floatoprice; chargys[20]; if(n<0) n=0; inti; spDatatemp; 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; } } } } voidshowData(inti) { spDatat,*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); } } intsearch() {intid; cout<<\"id:\"; cin>>id; intlow=0,mid,high=n-1; while(low<=high) { mid=(low+high)/2; if(t[mid].getId()==id) returnmid; elseif(t[mid].getId()>id) high=mid-1; elselow=mid+1; } return-1; } voidremove() {spDatat[10]; cout<<\"请输入要删除的商品编号\"<>id; fstreamfile(\"商品清单.txt\ for(intu=0;u<5;u++) file.read((char*)&t[u],sizeof(t[u])); for(intv=0;v<5;v++) { if(t[v].id==id) continue; else file.write((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; intlow=0,mid,high=n-1; while(low<=high) { mid=(low+high)/2; if(t[mid].getid()==id) returnmid; elseif(t[mid].getid()>id) high=mid-1; elselow=mid+1; } return-1; } voidxiugai() { charname[100]; intphone; inttemp; temp=search(); if(temp==-1) { cout<<\"cannotfindthegys!\"<>name; t[temp].setname(name); cout<<\"供应商手机号:\"; cin>>phone; t[temp].setphone(); } } voidremove() {gysDatag[10]; cout<<\"请输入要删除的供应商编号\"<>id; fstreamfile(\"gys.txt\ for(intu=0;u<5;u++) file.read((char*)&g[u],sizeof(g[u])); for(intv=0;v<5;v++) { if(g[v].id==id) continue; else file.write((char*)&g[v],sizeof(g[v])); cout<<\"该供应商被删除\"<>x; switch(x) { case1: { menu2(); Commoditycom; intc; for(;;) { cout<<\"请选择:\"; cin>>c; switch(c) { case1:com.newFile();break; case2:com.save();break; case3:com.remove();break; case4:com.search;break; case5:com.showData();break; case6:com.xiugai();break; case7:menu1();break; case0:{ cout<<\"***********谢谢使用**********\"<>c; switch(c) { case1:gys.newFile();break; case2:gys.save();break; case3:gys.remove();break; case4:gys.search();break; case5:gys.showData();break; case6:gys.xiugai();break; case7:menu1();break; case0:{ cout<<\"***********谢谢使用**********\"<

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 69lv.com 版权所有 湘ICP备2023021910号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务