




已阅读5页,还剩15页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机技术基础课程设计C语言设计报告题目:花店经营管理系统学院:材料科学与工程学院 专业:金属材料班级:050202班姓名: 何卓海指导教师:设计日期: 2006年1月3日1月8日一选题背景 本例实现了一个花店经营的管理系统,在经营的过程中,必需对花的库存量,销售量,剩余量以及花的种类,单价,颜色,名字等,有系统的管理。本程序定义了一个结构数组,并运用了一个主函数调用五个函数以实现整个花店的经营和管理。二设计思想: 编程思路:首先在程序开始处,引入了头文件,可以直接调用函数,然后对花的种类和五项命令进行了宏定义,接着枚举类型定义了花的颜色,定义了结构体数组,并且编写了”enter_data()”,”put_data()”,“buy()”,”find()”,”changecmd()”五个子函数,最后在mian函数的内部对各个子函数进行调用,实现综合管理。 三主要解决问题的方法及技术关键: 1运用指针定义了五项命令,分别指向五个函数,便于调用。 2运用了for, if-else-if, while, switch-case用来控制程序的流程。 主函数流程图 开 始 系统初始化 退 出判断是否为(quit)命令 接受键盘命令退 出Buy() enter()Find()命令转换(把字符命令转换为数字命令)是Put()否Buy()流程图否是是入 口提 示 信 息输入花名,价格选择花的种类和数量从i=0起,到第i个花开始比较是否出现该种花输出计算价格出 口是否是最后一朵花返 回 i+否Put()流程图 入 口 输出花的各项值 否判 断 isize 是输出花的各项的值进行switch,根据所需内容,选择执行。输出花的单价和数量出 口 Enter()流程图没有所要选择的颜色输入你选择的颜色判断是否有所选择的颜色输入花的各项值判 断isize提示信息入 口出 口否是是否i+是否i+是否i+Find()流程图 入 口提 示 信 息输入查找类型是否按名字查询从i=0,到第i个花开始比较是否有这种花输出花名,颜色,单价数量出 口是否按价格查询从i=0,到第i个花开始比较是否有这种花输出花名,颜色,单价数量出 口是否按颜色查询从i=0,到第i个花开始比较是否有这种花输出花名,颜色,单价出 口 , 五程序清单#include stdio.h#include stdlib.h#include string.h#include dos.h#define SIZE 8#define CMDSIZE 5typedef enum /*枚举类型定义*/red,white,yellow,purple,orangeCOLOR;typedef struct /*结构体定义*/char name20; COLOR color;float rate;int amount;FLOWER;char *Dcmd=buy,put,look,find,help; /*定义了5项命令的指针类型*/void enter_data(FLOWER flower); /*定义库存输入函数*/float buy(FLOWER flower); /*定义销售函数*/void put_data(FLOWER flower); /*定义库存输出函数*/void findflower(FLOWER flower);/*定义查询函数*/int changecmd(char cmd);/*定义命令解释函数*/void main()FLOWER flowerSIZE;float price;char cmd5=0,0,0,0,0;char exits5=quit;int recmd=0;int i;for(i=0;iSIZE;i+)memset(,0,20); /*成员设置,各类型初始化*/floweri.rate=0;floweri.amount=0;floweri.color=white;printf(花店经营管理系统n);printf(nYou can input buy,look,put,help,find:n);while(1) /*命令转换,把字符转换为数字*/scanf(%s,cmd);if(strcmp(cmd,exits)=0)exit(1);recmd=changecmd(cmd);switch(recmd)case 0:printf(a bad command please input a corrcet cmd n); /*输入了错误信息的提示*/break;case 1:price=buy(flower);if(price=0)printf(nSorry,buy error);elseprintf(n OK,Please pay money %f n,price);break;case 2:enter_data(flower);break;case 3:put_data(flower);break;case 4:findflower(flower);break;case 5:printf(nYoucaninput buy,look,put,help,find:n);break;/*命令解释函数*/*该函数处理接收到的命令 通过与命令数组里的预定义命令比较 返回命令在数组中的位置*/int changecmd(char cmd)int i=0;for(i=0;iCMDSIZE;i+)if(strcmp(cmd,Dcmdi)=0)return i+1;return 0;/*库存输入函数*/*该函数接受键盘输入 把输入数据与库存对应*/void enter_data(FLOWER flower)int i,flag;for(i=0;iredt1-whitet2-yellowt3-purplet4-oranten);printf(Please choose a color:n);scanf(%d,&floweri.color);if(floweri.color=0&floweri.color=4)flag=0;elseprintf(Not have this colorn);/*输出现有库存的鲜花数据的函数定义*/void put_data(FLOWER flower)int i;printf(nName Color Rate Amountn);for(i=0;iredt1-whitet2-yellowt3-purplet4-oranten);printf(Please choose a color:n);scanf(%d,&color);if(color=0&color=4)flag=0;elseprintf(Not have this colorn);printf(Please amount you want to buy:n);/*输出需要的花的数量*/scanf(%d,&amount);for(i=0;iSIZE;i+)if(floweri.rate=rate&strcmp(,name)=0&floweri.color=color)break;if(i=SIZE)printf(nNot fount the flower you buyn);/*没有要买的花*/price=0;else if(floweri.amountfind as namet 1-find as rate t 2-find as colorn);scanf(%d,&rcmd);switch(rcmd)case 0: /*按花名查询*/printf(In put a flower name:n);scanf(%s,name);for(i=0;iSIZE;i+)if(=name)printf(%st%dt%ft%dn,,floweri.color,floweri.rate,floweri.amount);break;case 1: /*按数量查询*/printf(In put a flower rate:n);scanf(%f,&rate);for(i=0;iSIZE;i+)if(floweri.rate=rate)printf(%st%dt%ft%dn,,floweri.color,floweri.rate,floweri.amount);break;case 2: /*按颜色查询*/printf(In put a flower color:n);scanf(%d,&color);for(i=0;iSIZE;i+)if(floweri.color=color)printf(%s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年终止写字楼租赁合同协议范本
- 门面续签合同范本
- 购买电脑耗材合同范本
- 家具清仓转让合同范本
- 病人用品租赁合同范本
- 单位购柴油合同范本
- 轨道热熔合同范本
- 废旧手表销售合同范本
- 乡村公路业绩合同范本
- 化脓性脑膜炎脑脊液漏护理查房
- 学习中心教学论
- GB/T 43241-2023法庭科学一氧化二氮检验气相色谱-质谱法
- 小儿腹泻护理查房
- GB/T 42653-2023玻璃高温黏度试验方法
- 代持股权挂名法人协议书
- 普通化学(第五版)浙江大学普通化学教研组P课件
- 医疗保障法律法规行政处罚司法审视及建议PPT学习培训课件
- GB/T 9999.2-2018中国标准连续出版物号第2部分:ISSN
- GB/T 6543-2008运输包装用单瓦楞纸箱和双瓦楞纸箱
- GB 19522-2004车辆驾驶人员血液、呼气酒精含量阈值与检验
- GB 10238-1998油井水泥
评论
0/150
提交评论