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