超市管理系统(C语言课程设计报告).doc_第1页
超市管理系统(C语言课程设计报告).doc_第2页
超市管理系统(C语言课程设计报告).doc_第3页
超市管理系统(C语言课程设计报告).doc_第4页
超市管理系统(C语言课程设计报告).doc_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

信息与计算科学系课程设计报告超市管理系统本设计运用C语言程序设计了一个超市管理系统。主要实现的功能有进货功能、退货功能、商品销售功能、商品信息查询功能、商品信息浏览功能。1. 开发工具和编程语言:开发工具:Microsoft Visual C+ 6.0编程语言:C语言2. 模块划分信息查询功能信息浏览功能 退出功能进货功能退货功能商品销售功能超市管理系统的设计与实现3. 系统功能与函数的对应关系本系统包括一个主函数和6个被调函数,分别如下:(1) 主函数 void main()(2) 功能选择函数 void gongneng()(3) 进货功能函数 void jinhuo()(4) 退货功能函数 void tuihuo()(5) 商品销售函数 void spxs()(6) 信息查询函数 void xxcx()(7) 信息浏览函数 void spxxpx()4 . 结构体类型说明商品信息包括:商品编号、商品名称、商品进价、商品售价、商品库存数量。结构体类型定义为:struct xinxi/结构体char bh30;/商品编号char bhstr30;/商品名称float jinjia;/商品进价float shoujia;/商品售价int kucun;/商品库存数量;5 . 系统函数的设计与实现5.1 主函数主函数中运行功能选择函数,运行时可以显示系统界面,系统界面如图5-1所示。 图5-1 系统主界面主函数中可以实现各种功能的选择。5.2进货功能函数(1)流程图进货功能函数实现进货功能,能够实现要进货商品的信息添加或录入。进货时,先检测本商品是否存在,若存在则修改库存数量等相关信息;否则添加本商品的相关信息。进货流程图如图5-2所示。开始菜单进货功能输入商品的名称本商品是否存在否添加本商品的相关信息 是修改库存数量等相关信息返回开始菜单 图5-2 进货功能流程图(2)系统代码void jinhuo()/进货处理函数char str30;int i,a=2;while(a=2)printf(请输入商品的名称:);scanf(%s,str);for(i=0;i=b)/如果没有找到要进货的商品,则添加商品信息 printf(添加商品信息:n); printf(请输入商品编号:); scanf(%s,si.bh); printf(请输入商品名称:); scanf(%s,si.bhstr); printf(请输入商品进价:); scanf(%f,&si.jinjia); printf(请输入商品售价:); scanf(%f,&si.shoujia); printf(请输入商品库存数量:); scanf(%d,&si.kucun); printf(商品信息添加完成n); b+; printf(请选择:); printf(1.返回开始菜单); printf(2.继续进行进货处理); scanf(%d,&a);(3)运行效果输入:选项1输出:请输入商品的名称:输入:1输出:添加商品信息 请输入商品编号: 输入:1输出:商品信息添加完成 请选择:1.返回开始菜单2.继续进行进货处理输入:2输出:请输入商品名称:输入:1输出:编号:1,进价:1.0,售价:1.0,库存数量:1 请输入新库存:输入:2输出:库存信息修改完成 请选择:1.返回开始菜单2.继续进行进货处理输入:1返回开始菜单运行效果图如图5-3所示。 图5-3 进货功能运行界面5.3退货功能函数(1)流程图退货功能函数实现退货功能,能够实现要退货商品的信息修改。退货时,修改库存数量等相关信息;若库存数量为0,提示是否删除本商品,若选“是”则删除该商品的信息。退货流程图如图5-4所示。开始菜单退货处理请输入要退的商品名称请输入要退商品的数量是否退货否是修改库存数量等相关信息退货成功库存是否为零否是是否删除本商品否是本商品已删除返回开始菜单 图5-4 退货功能流程图(2)系统代码 void tuihuo()/退货处理函数int i,a,c=2,d;char str30;while(c=2)printf(请输入要退的商品名称:);scanf(%s,str);for(i=0;ib;i+)if(strcmp(str,si.bhstr)=0)/查找要退货的商品printf(请输入要退商品的数量:);scanf(%d,&d);printf(请选择是否要退货);printf(1.是);printf(2.否);scanf(%d,&a);if(a=1)si.kucun =si.kucun +d;/修改库存信息printf(退货已成功n);if(si.kucun=0)/如果库存数量为零,提示是否删除该商品printf(本商品库存为0,请选择是否删除本商品);printf(1.是);printf(2.否);scanf(%d,&a);if(a=1) strcpy(si.bh,该商品不存在); strcpy(si.bhstr,该商品不存在);si.jinjia=0;si.shoujia=0;si.kucun=0;printf(本商品已删除n); printf(请选择:); printf(1.返回开始菜单); printf(2.继续进行退货处理); scanf(%d,&c);(3)运行效果输入:2输出:请输入要退的商品名称:输入:1输出:请输入要退商品的数量:输入:1输出:请选择是否要退货1.是2.否输入:1输出:退货已成功 请选择:1.返回开始菜单2.继续进行退货处理输入:1返回开始菜单运行效果图如图5-5所示。 图5-5 退货功能运行界面5.4商品销售函数(1)流程图商品销售函数实现商品购买功能。购买商品时输入要购买商品的编号、购买数量,能够计算出应收金额和应收总金额,同时修改库存数量。此外,当实收金额少于应收总金额时,此次销售不成功,可根据用户的要求进行修改或放弃。商品销售流程图如图5-6所示。开始菜单商品销售输入购买商品的编号该商品是否存在 输入购买数量是库存数量是否够重新输入购买数量是否计算应收金额,修改库存数量、打印出销售清单 输出未找到该商品是否结账是否输入实收金额 实收金额是否大于应收总金额否是是否重新付款是找零,购买成功否取消购买某种商品,重新计算总金额,修改库存信息返回开始菜单 图5-6 商品销售流程图(2)系统代码 void spxs()/商品销售函数char str30;int i,sl,a=2,c;float je,jez=0,ssje,zl;while(a=2)printf(请输入购买商品的编号:);scanf(%s,str);for(i=0;isi.kucun )/购买的数量如果大于库存数量 printf(商品库存数量不足,请重新输入要购买的数量:); scanf(%d,&sl); printf(应收金额为:); je=sl*si.shoujia;/计算购买该商品的金额 printf(%5.1fn,je); si.kucun=si.kucun-sl;/修改库存信息 printf(应收总金额为:); jez=jez+je;/计算购买商品的总金额 printf(%5.1fn,jez); break; if(i=b)/如果没有找到该商品 printf(对不起,未找到该商品n); printf(请选择:); printf(1.结账); printf(2.继续购买商品); scanf(%d,&a); if(a=1)/结账 printf(请输入实收金额:); scanf(%f,&ssje); while(ssjejez)/如果实收金额小于应收总金额 printf(金额不足,请选择:); printf(1.重新付款); printf(2.取消购买); scanf(%d,&c); if(c=1)/重新付款 printf(请输入实收金额:); scanf(%f,&ssje); else/取消购买某种商品 printf(请输入取消购买商品的编号或名称:); scanf(%s,str); for(i=0;ib;i+) if(strcmp(str,si.bh)=0)|(strcmp(str,si.bhstr)=0)/查找要取消购买的商品 printf(请输入取消购买的数量); scanf(%d,&sl); si.kucun =si.kucun +sl;/修改库存信息 jez=jez-sl*si.shoujia ;/重新计算总金额 printf(取消购买成功n); zl=ssje-jez;/找零 printf(找零%5.1fn,zl); printf(购买成功n); if(a!=2) printf(请选择:); printf(1.返回开始菜单); printf(2.继续购买商品); scanf(%d,&a); jez=0; (3)运行效果输入:3输出:请输入购买商品的编号:输入:1输出:请输入要购买的数量:输入:1输出:应收金额为:1.0 应收总金额为:1.0 请选择:1.结账2.继续购买商品输入:2输出:请输入购买商品的编号:输入:2输出:请输入要购买的数量:输入:1输出:应收金额为:2.0 应收总金额为:3.0 请选择:1.结账2.继续购买商品输入:1输出:请输入实收金额:输入:2输出:金额不足,请选择:1.重新付款2.取消购买输入:1输出:请输入实收金额:输入:5输出:找零2.0 购买成功 请选择:1.返回开始菜单2.继续购买商品输入:1返回开始菜单运行效果图如图5-7所示。 图5-7 商品销售功能运行界面5.5商品信息查询函数(1)流程图商品信息查询函数实现查询商品信息的功能。查询时输入商品的编号或名称,输出商品的编号、名称、进价、售价、库存数量。 商品信息查询流程图如图5-8所示。开始菜单商品信息查询输入要查询商品的编号或名称商品是否存在否输出未找到该商品是输出商品的编号、名称、进价、售价、库存信息返回开始菜单 图5-8 商品信息查询流程图(2)系统代码void xxcx()/商品信息查询函数char str30;int i,a=2;while(a=2)printf(请输入要查询商品的编号或名称:);scanf(%s,str);for(i=0;i=b)/未找到要查询的商品 printf(对不起,未找到该商品n); printf(请选择:); printf(1.返回开始菜单); printf(2.继续查询商品); scanf(%d,&a);(3)运行效果输入:4输出:请输入要查询商品的编号或名称:输入:1输出:商品编号:1 商品名称:1商品进价:1.0商品售价:1.0商品库存:1请选择:1.返回开始菜单2.继续查询商品输入:2输出:请输入要查询商品的编号或名称:输入:3输出:对不起,未找到该商品请选择:1.返回开始菜单2.继续查询商品输入:1返回开始菜单运行效果图如图5-9所示。 图5-9 商品信息查询功能运行界面5.6商品信息浏览函数(1)流程图商品信息浏览函数实现浏览全部商品信息的功能。浏览时商品按编号依次输出商品的编号、名称、进价、售价、库存数量信息。商品信息浏览流程图如图5-10所示开始菜单。商品信息浏览 依次输出所有商品的编号、名称、进价、售价、库存信息输入任意字符返回开始菜单返回开始菜单 图5-10 商品信息浏览流程图(2)系统代码void spxxpx()/商品信息排序函数int i,j,t5;float t3,t4;char t130,t230,a;for(j=1;j=b-1;j+)/排序for(i=0;i0)strcpy(t1,si.bh);strcpy(t2,si.bhstr);t3=si.jinjia;t4=si.shoujia;t5=si.kucun;strcpy(si.bh,si+1.bh);strcpy(si.bhstr,si+1.bhstr);si.jinjia=si+1.jinjia;si.shoujia=si+1.shoujia;si.kucun=si+1.kucun; strcpy(si+1.bh,t1);strcpy(si+1.bhstr,t2);si+1.jinjia=t3;si+1.shoujia=t4;si+1.kucun=t5;printf(按编号依次输出商品信息:n);for(i=0;ib;i+)/按编号依次输出商品信息printf(商品编号: %sn商品名称: %sn商品进价:%5.1fn商品售价:%5.1fn商品库存: %dnn,si.bh,si.bhstr,si.jinjia,si.shoujia,si.kucun);printf(请输入任意字符返回开始菜单);scanf(%s,&a);(3)运行效果输入:5输

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论