1、资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。*实践教学*软件学院 秋季学期C语言课程设计 说明书题 目: 汽车销售管理系统 专业班级: 级软件工程3班 姓 名: 李平伯 学 号: 12270121 指导教师: 张 其 文 成 绩: 目录摘要I序言I1、 需求分析11.1 系统编写的目的11.2 背景说明及开发意义11.2.1汽车发展史11.2.2系统开发背景及意义21.3 系统需求分析21.4 功能需求分析31.4.1系统功能描述31.4.2系统总体功能层31.5 数据需求31.5.1 数据需求分析31.5.2 数据的输入42、 设计思路52.1 设计的目的52.2 设计内容
2、52.3 概要设计52.3.1 功能模块图52.3.2 各个模块详细的功能描述52.3.3 系统的顶层数据流图63、 详细设计73.1 功能函数的调用关系图73.2主要的设计及编码74、 运行调试与分析讨论94.1 编译测试调试94.1.1异常94.1.2正常104.2 模块运行调试105、 设计体会与小结13参考文献14致谢15摘要关键词:C语言、 销售管理、 软件开发。 序言本次项目工程的名称是c语言课程设计, 工程产品的名称是汽车销售管理系统。本汽车销售管理系统是完全自主开发的汽车销售管理软件, 以汽车销售企业中的各部门和其它部门为基础, 利用C语言编程来实现汽车销售的办公自动化和销售统
3、计。它能够对汽车销售业务进行详细的管理, 对采购和销售的配件情况进行详细的记录, 包括采购信息录入、 按名字和编号进行查询、 修改录入错误和处理退回配件等功能。本程序的预期使用者是客户、 测试人员、 用户文档编写者、 项目管理人员, 本程序的使用对象为使用汽车销售系统软件的用户。经过本次课程设计, 将强化我们的动手能力, 在理论和实践的基础上进一步巩固c语言课程设计的学习内容, 掌握工程设计的基本方法。同时, 我们在将知识与应用和实际相连接的过程中, 提高自我分析和解决问题的能力, 增加综合应用能力, 为后续各门计算机课程的学习打下坚实的基础, 为毕业设计和以后的工作打下必要的基础。1、 需求
4、分析该汽车销售管理系统的需求分析将从背景说明及意义、 系统编写目的、 系统需求分析、 功能需求分析等几个方面来描述。1.1 系统编写的目的本系统是以汽车各项基本信息为主体, 以汽车供应商和汽车需求商为服务对象, 经过对各种票据和销售的管理操作, 需要达到以下目标: 1、 实现从客户来访查询、 各类型汽车报价、 客户预定及购买, 到公司采购等多个销售环节上的循环管理服务; 2、 能够很快地将市场信息反馈到各职能部门, 制定相应策略。3、 公司市场部能够快速准确捕捉市场动态, 提高车辆销售的成功率, 提高服务质量, 从而提高企业在市场上竞争能力。4、 使公司的各个部门能够快速共享市场资源, 让公司
5、内部能够和、 高速运转, 实现利益最大化。5、 系统既能够满足多品牌车辆的销售公司的需求, 也能够适用于专卖店的销售公司的需求; 1.2 背景说明及开发意义1.2.1汽车发展史汽车工业经历了一百多年的发展, 对国家经济的发展和腾飞以及对人类社会的文明带来了巨大影响。汽车工业已成为许多国家的支柱产业, 随着人们生活水平以及汽车性能的不断提高, 人们对汽车的消费和需求也越来越旺盛, 世界汽车工业也保持庞大的市场需求和生产规模。近年来, 中国汽车市场发展迅猛, 以接近40的速度增长。巨大的市场容量和可观的经济效益, 引起各汽车厂家(包括世界各著名汽车厂家的在华企业)纷纷加大投资, 汽车市场烽烟四起,
6、 汽车销售策略和模式新招频出, 竞争已是空前的激烈。在如此形式下, 一种介于生产厂家和用户之间的桥梁, 汽车销售公司正在不断的产生和发展壮大。1.2.2系统开发背景及意义随着人们生活水平的不断提高, 人们对汽车的消费和需求也越来越旺盛。各汽车销售公司它们都有管理、 计划、 销售、 财务、 配件、 售后服务等职能部门。如何管理好这些部门, 使整个公司协调一致、 高效率地运转, 是各公司急待解决的问题。但有的业务环节依然运用人工记账的传统办法, 既容易出错又会导致账目混乱, 查询和统计起来非常不方便, 费时又费力, 严重时会给公司造成难以挽回的损失。像这样初级的公司管理方法, 已远跟不上销售政策和
7、销售形势发展的需要。因此, 如何对汽车销售管理提供一整套的管理方法达到提高效率和降低成本的问题成为焦点。汽车销售管理系统的提出, 对汽车销售公司来讲意义重大。它不但能使各业务环节协调一致, 而且操作简单, 账目清晰, 经过账目查询, 公司能在最短的时间内获得市场信息, 从而制订相应的决策。1.3 系统需求分析 在车辆销售管理当中, 人工统计的速度慢, 而且容易出现差错。本车辆销售管理系统的自动化加速了统计工作, 提高管理效率。本程序主要采用对输入的相关信息进行自动分析, 然后按组分类将数据保存到数组, 这样的结构化非常便于程序后续的统计工作。统计具体过程涉及到车辆进价售价及利润排序等问题, 将
8、于正文中详细介绍。本程序实现了所有设计要求: 1系统以菜单方式工作; 2生产车辆信息录入功能; 3.生产车辆销售信息; 4.查询、 排序功能: 按主要车辆信息实现查询; 5.车辆信息的删除。1.4 功能需求分析1.4.1系统功能描述1.入库管理: 能很好地完成汽车的售前管理。售前管理包括供应商信息, 需求商信息和汽车基本信息的入库作业。2.车辆管理: 能详细记录汽车供应商和公司之间的交易过程, 即进货或退货过程。3.销售管理: 能详细记录需求商与公司之间的交易过程, 即订车和退车过程。4.查询管理: 能及时准确地获得汽车在某阶段的盈亏情况和市场的需求走势。即经过对汽车销售排行、 汽车进货、 汽
9、车退货、 订车、 退车等信息查询获得相应的结果, 以备公司作为参考, 从而制定出相应的策略。1.4.2系统总体功能层1.5 数据需求 1.5.1 数据需求分析应当有用于记录用户密码用户名信息的表, 还应有公司与供应商间的订货表、 退货表, 公司与需求商间的订车表、 退车表, 以及车辆入库的入库表记录车辆的一系列属性, 以及汽车销量表来记录汽车的销售情况。 1.5.2 数据的输入经过键盘和鼠标向软件系统输入数据。2、 设计思路2.1 设计的目的l 课程设计经过本次, 强化上级动手能力, 在理论和实践的基础上进一步巩固 C语言程序设计课程的学习内容, 掌握工程软件设计的基本方法。l 学会将知识应用
10、与实际的方法, 提高分析和解决问题的能力, 增加综合能力。l 为后续各门计算机课程的学习打下坚实基础。为毕业设计和以后工作打下必要基础。l 经过本次课程设计基本掌握C语言的实际应用基础与技巧。2.2 设计内容用所学过的C语言知识( 文件, 结构体, 函数, 链表) 编写一个汽车销售管理系统。2.3 概要设计2.3.1 功能模块图2.3.2 各个模块详细的功能描述1.录入:输入并创立链表2.添加: 在数据最后一位添加数据3.修改: 按编号查找后输出并按选择进行修改4.删除: 按编号查找确认删除后删除数据5.打印: 对数据逐项进行输出打印6.查找: 输入编号查找到结果并显示7.排列: 按编号、 名
11、称、 数量、 价格、 销售日期进行排列8.统计: 对汽车辆数进行统计9.保存: 对输入数据进行保存10.读取: 对保存好的数据进行读取2.3.3 系统的顶层数据流图车辆采购员仓库管理系统仓库汽车存储表处理后信息人员管理系统人员信息表汽车销售员仓库管理员仓库管理员汽车销售员人员管理员人员管理员采购车辆信息入/移库信息储存信息车辆销售信息信息信息信息操作信息信息存储信息3、 详细设计3.1 功能函数的调用关系图( 刘健) 3.2主要的设计及编码( 李平伯,刘健) system(cls);p1=head;p()=(struct GOODS*)malloc(sizeof(struct GOODS);p
12、utitem_inf(所需要添加的汽车信息是: nnn);printf(请输入所要添加的汽车编号: );scanf(%d,&p0-num);printf(n 请输入所要添加的汽车名称: );scanf(%s,p0-name);printf(n 请输入所要添加的汽车数量: );scanf(%d,&p0-count);printf(n 请输入所要添加的汽车价格: );scanf(%d,&p0-price);printf(n 请输入所要添加的汽车出厂日期(yyyy-mm-nn);scanf(%d-%d-%d,&p0-year,&p0-month,&p0-day);for(p1=p1-next;p1=
13、NULL;p1=p1-next)if(p1-next=NULL)p1-next=p0;p1=p0;p1-next=NULL;pritnf(nn);putitem_inf(*添加的信息为*);printf(nn);printf(编号:%ld 名称:%s 数量:%ld 价格:%ld 出厂日期:%ld年%d月%d日nnn,p0-num,p0-name,p0-count,p0-price,p0-year,p0-month,p0-day);printf(nn);putitem_inf(添加信息已结束, 按任意键继续! ! );getch();return head;4、 运行调试与分析讨论4.1 编译测
14、试调试( 李平伯) 4.1.1异常4.1.2正常4.2 模块运行调试( a-e: 刘健; f-j: 李平伯) a.录入汽车信息b.添加汽车信息c.修改汽车信息d.删除汽车信息e.打印汽车信息f.查询汽车信息g排列汽车信息h.统计汽车信息i.保存汽车信息j.读取汽车信息5、 设计体会与小结我组做的汽车销售管理系统, 是经过需求分析了解了用户需求后才开始系统设计的。但由于是第一次设计开发软件系统, 肯定有很多不足, 但我相信, 经过我们一次次的实践和总结, 我们的能力会不断提升。经过此次的课程设计, 我更近一步地掌握了C语言课程的相关知识, 熟悉了指针、 数据、 结构体等章节的内容。对软件工程中的
15、类的定义和运用有了更深的了解。经过此次的课程设计, 使我意识到团队合作的重要性, 培养了我管理、 领导团队的能力。经过这两周的程序编写, 经过老师和同学的帮助, 再加上自己对内容得理解, 最终完成了对汽车销售管理系统的编写, 实现了其所要求的功能。调试情况良好。在调试过程中, 特别对程序中出错的地方, 应仔细去研究代码, 记得在一次调试中最多会有几百个错误, 从前面开始改, 改一个就会去除好些错误, 要静下心来, 慢慢检查。我们在写程序时采取了前一天先在本子编好代码, 第二天上机检查运行的模式, 感觉还是不错! 在头脑中先对程序的各项功能和大致模块要怎么引用有个大致的认识, 而后在对各个分模块
16、功能算法研究, 就会做到有目的性, 能提高时间利用率。在整个编程过程中, 对课本知识也有了更进一步的掌握。学会了在VC+上变量要先定义完后再赋值等一系列编程知识, 在检查时能够分段检查等技巧等等。在最后程序编出时的高兴与喜悦也会难以忘记的, 总的来说, 在这次编程中, 我们对数组的掌握更全面, 复习了文件这一很难的章节, 在接下来学习当中就要尝试各种的软件开发, 一定不能落后。这次课程设计确实提高了我们的动手能力, 对以后很有益处。参考文献C语言程序设计 谭浩强 ( 清华大学出版社) 标准C语言编程宝典 Raphael Pender 苏剑 ( 电子工业出版社) C语言程序设计实例精粹 潭明金 俞海英 ( 电子工业出版社) C语言实验与课程设计指导 曹哲 ( 机械工业出版社) C语言课程设计案例精编 姜灵芝 余键 ( 清华大学出版社) 致谢首先感谢我们的C程序老师让我学会了很多有关于C程序的知识。让我认识到C程序的重要性。再感谢我们张老师、 马老师、 陈老师对我们做的这次课程设计的支持与帮助。没有她们的帮助, 我们很难完成这次课设。最后谢谢我的搭档刘健同学帮我攻克了许多难关, 刘健同学给了我很大的鼓励。