资源描述
. . . .
阳 工 程 学 院
课 程 设 计
设计题目:程序设计根底课程设计
——销售管理系统
系 别 信息工程系 班级 软本101班
学生姓名 王超、陈建松、王帆、宋竞 学号 16、14、09、07
指导教师 张楠、栾好利 职称 讲师、教授
起止日期:2011 年4月3日起——至 2011 年4月15日止
阳 工 程 学 院
课程设计任务书
课程设计题目: 程序设计根底课程设计
—— 销售管理系统
系 别 信息工程系 班级 软本101班
学生姓名 王超、陈建松、王帆、宋竞 学号 16、14、09、07
指导教师 张楠、栾好利 职称 讲师、教授
课程设计进展地点: 实训F 608
任 务 下 达 时 间: 2011 年 4 月 3 日
起止日期:2011 年4月3日起——至 2011 年4月15日止
教研室主任 王欣 2011 年 4 月 15日批准
一、课程设计的原始资料与依据
目前,随着计算机技术的飞速开展,许多的管理事务都由电脑来管理,从而提高了管理的速率,效率。
查阅有关资料,进一步理解程序设计模块化的思想,并利用此思想编写一个简单的管理系统。通过本设计可以加深理解利用程序设计思想开发一个系统的整个流程,提高分析问题、解决问题和实际动手的能力。
二、课程设计主要容与要求
信息与其功能描述:
某公司有四个销售员〔编号:1-4〕,负责销售五种产品〔编号:1-5〕。每个销售员都将当天出售的每种产品各写一便条交上来。每便条包含容:
1〕销售员的代号
2〕产品的代号
3〕这种产品的当天的销售额
每位销售员每天可能上缴0-5便条。假设,收集到了上个月的所有便条,编写一个处理系统,实现以下功能:
1〕输入上个月的销售信息;
2〕计算上个月每个人每种产品的销售额;
3〕可对每个销售员的销售额进展查询;
4〕按销售额对销售员进展排序,输出排序结果〔销售员代号〕;
5〕统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果〔需输出产品的代号和销售额〕;
6〕输出统计报表
销售统计报表
产品代号 销售之和
销售员代号 1 2 3 4 5
1
2
3
4
每种产品之和 总和
7〕销售员的销售信息在程序运行期间用链表表示,程序关闭那么保存至文件。
创新要求:
在根本要求达到后,可进展创新设计。
三、对课程设计说明书撰写容、格式、字数的要求
1.课程设计说明书是表达和总结课程设计成果的载体,主要容包括:设计题目、设计目的、设备器材、设计原理与容、设计步骤、遇到的问题与解决方法、设计总结、参考文献等。一般不应少于3000字。
2.在适当位置配合相应的实验原理图、功能模块图、算法流程图等图表进展说明。应做到文理通顺,容正确完整,书写工整,装订整齐。
3.设计总结局部主要写本人完成工作简介以与自己的设计体会,包括通过课程设计学到了什么,哪里遇到了困难,解决的方法以与今后的目标。
4.课程设计说明书手写或打印均可。手写要用学校统一的课程设计用纸,用黑或蓝黑墨水工整书写;打印时采用A4纸,页边距均为20mm,正文采用宋体小四号字,行间距18磅。文标题采用黑体小三号字,一级节标题采用黑体四号字,二级节标题采用黑体小四号字,表题与图题采用宋体五号字。
5.课程设计说明书装订顺序为:封面、任务书、成绩评定表、目录、正文、参考文献
四、设计完成后应提交成果的种类、数量、质量等方面的要求
1.完成“任务书〞中指定的功能,运行结果正确。
2.课程设计说明书。
五、时间进度安排
顺序
阶段日期
计 划 完 成 容
备注
1
第1天
阅读资料
2
第2—3天
系统分析设计
3
第4—8天
程序编制、调试与运行
4
第9天
成绩评定
5
第10天
撰写课程设计说明书
六、主要参考资料〔文献〕
[1]谭浩强.《C程序设计》〔第三版〕.: 清华大学.2006
[2]天洲.《C语言高级程序设计》. :人民邮电.2002
[3]旭.《C语言程序设计案例教程》.: 人民邮电.2005
[4]郭翠英.《程序设计案例经典》.中国水利电力.2004
[5]谭浩强.《程序设计根底》.:清华大学.2004
[6]王为青.《C语言高级编程与实例剖析》.:人民邮电.2008.02
[7]徐慧.《C语言实例解析精粹》.:人民邮电.2006.04
[8]周、金海溶. 《程序设计案例经典》.: 科学.2000
[9]大鹏 栾好利 翼英 等编著.《C语言程序设计教程习题与上机实训指导》.中国水利水电.2005
[10]莉 董渊 瑞丰 编着. 《C++语言程序设计》(第3版). :清华大学.2006
阳 工 程 学 院
程序设计根底 课程设计成绩评定表
系〔部〕:信息工程系班级:软本 101学生:王 超
指 导 教 师 评 审 意 见
评价容
具 体 要 求
权重
评分
加权分
调研
论证
能独立查阅文献,收集资料;能制定课程设计方案和日程安排。
0.1
5
4
3
2
工作能力
态度
工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,
0.2
5
4
3
2
工作量
按期圆满完成规定的设计任务,工作量饱满,难度适宜。
0.2
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规。
0.5
5
4
3
2
指导教师评审成绩
〔加权分合计乘以8〕
分
加权分合计
指 导 教 师 签 名:
年 月 日
评 阅 教 师 评 审 意 见
评价容
具 体 要 求
权重
评分
加权分
查阅
文献
查阅文献有一定广泛性;有综合归纳资料的能力
0.2
5
4
3
2
工作量
工作量饱满,难度适中。
0.5
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规。
0.3
5
4
3
2
评阅教师评审成绩
〔加权分合计乘以4〕
分
加权分合计
评 阅 教 师 签 名:
年 月 日
答 辩 小 组 评 审 意 见
评价容
具 体 要 求
权重
评分
加权分
学生汇报
汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,根本上反映了所完成任务的全部容;时间符合要求。
0.5
5
4
3
2
答辩
思路清晰;回答下列问题有理论依据,根本概念清楚;主要问题回答准确,深入,有说服力。
0.5
5
4
3
2
辩论小组评审成绩
〔加权分合计乘以8〕
分
加权分合计
辩论小组教师签名:
年 月 日
课 程 设 计 总 评 成 绩
分
阳 工 程 学 院
程序设计根底 课程设计成绩评定表
系〔部〕:信息工程系班级:软本 101 学生:建松
指 导 教 师 评 审 意 见
评价容
具 体 要 求
权重
评分
加权分
调研
论证
能独立查阅文献,收集资料;能制定课程设计方案和日程安排。
0.1
5
4
3
2
工作能力
态度
工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,
0.2
5
4
3
2
工作量
按期圆满完成规定的设计任务,工作量饱满,难度适宜。
0.2
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规。
0.5
5
4
3
2
指导教师评审成绩
〔加权分合计乘以8〕
分
加权分合计
指 导 教 师 签 名:
年 月 日
评 阅 教 师 评 审 意 见
评价容
具 体 要 求
权重
评分
加权分
查阅
文献
查阅文献有一定广泛性;有综合归纳资料的能力
0.2
5
4
3
2
工作量
工作量饱满,难度适中。
0.5
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规。
0.3
5
4
3
2
评阅教师评审成绩
〔加权分合计乘以4〕
分
加权分合计
评 阅 教 师 签 名:
年 月 日
答 辩 小 组 评 审 意 见
评价容
具 体 要 求
权重
评分
加权分
学生汇报
汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,根本上反映了所完成任务的全部容;时间符合要求。
0.5
5
4
3
2
答辩
思路清晰;回答下列问题有理论依据,根本概念清楚;主要问题回答准确,深入,有说服力。
0.5
5
4
3
2
辩论小组评审成绩
〔加权分合计乘以8〕
分
加权分合计
辩论小组教师签名:
年 月 日
课 程 设 计 总 评 成 绩
分
阳 工 程 学 院
程序设计根底 课程设计成绩评定表
系〔部〕:信息工程系班级:软本 101学生:王 帆
指 导 教 师 评 审 意 见
评价容
具 体 要 求
权重
评分
加权分
调研
论证
能独立查阅文献,收集资料;能制定课程设计方案和日程安排。
0.1
5
4
3
2
工作能力
态度
工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,
0.2
5
4
3
2
工作量
按期圆满完成规定的设计任务,工作量饱满,难度适宜。
0.2
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规。
0.5
5
4
3
2
指导教师评审成绩
〔加权分合计乘以8〕
分
加权分合计
指 导 教 师 签 名:
年 月 日
评 阅 教 师 评 审 意 见
评价容
具 体 要 求
权重
评分
加权分
查阅
文献
查阅文献有一定广泛性;有综合归纳资料的能力
0.2
5
4
3
2
工作量
工作量饱满,难度适中。
0.5
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规。
0.3
5
4
3
2
评阅教师评审成绩
〔加权分合计乘以4〕
分
加权分合计
评 阅 教 师 签 名:
年 月 日
答 辩 小 组 评 审 意 见
评价容
具 体 要 求
权重
评分
加权分
学生汇报
汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,根本上反映了所完成任务的全部容;时间符合要求。
0.5
5
4
3
2
答辩
思路清晰;回答下列问题有理论依据,根本概念清楚;主要问题回答准确,深入,有说服力。
0.5
5
4
3
2
辩论小组评审成绩
〔加权分合计乘以8〕
分
加权分合计
辩论小组教师签名:
年 月 日
课 程 设 计 总 评 成 绩
分
阳 工 程 学 院
程序设计根底 课程设计成绩评定表
系〔部〕:信息工程系班级:软本 101学生:宋 竞
指 导 教 师 评 审 意 见
评价容
具 体 要 求
权重
评分
加权分
调研
论证
能独立查阅文献,收集资料;能制定课程设计方案和日程安排。
0.1
5
4
3
2
工作能力
态度
工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,
0.2
5
4
3
2
工作量
按期圆满完成规定的设计任务,工作量饱满,难度适宜。
0.2
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规。
0.5
5
4
3
2
指导教师评审成绩
〔加权分合计乘以8〕
分
加权分合计
指 导 教 师 签 名:
年 月 日
评 阅 教 师 评 审 意 见
评价容
具 体 要 求
权重
评分
加权分
查阅
文献
查阅文献有一定广泛性;有综合归纳资料的能力
0.2
5
4
3
2
工作量
工作量饱满,难度适中。
0.5
5
4
3
2
说明书的质量
说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规。
0.3
5
4
3
2
评阅教师评审成绩
〔加权分合计乘以4〕
分
加权分合计
评 阅 教 师 签 名:
年 月 日
答 辩 小 组 评 审 意 见
评价容
具 体 要 求
权重
评分
加权分
学生汇报
汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,根本上反映了所完成任务的全部容;时间符合要求。
0.5
5
4
3
2
答辩
思路清晰;回答下列问题有理论依据,根本概念清楚;主要问题回答准确,深入,有说服力。
0.5
5
4
3
2
辩论小组评审成绩
〔加权分合计乘以8〕
分
加权分合计
辩论小组教师签名:
年 月 日
课 程 设 计 总 评 成 绩
分
27 / 37
. . . .
摘 要
现代科学技术的飞速开展,改变了世界,也改变了人类的生活。作为新世纪的大学生,应当站在时代开展的前列,掌握现代科学技术知识,调整自己的知识结构和能力结构,以适应社会开展的要求。新世纪需要具有丰富的现代科学知识,能够独立解决面临的任务,充满活力,有创新意识的新型人才。
掌握计算机知识和应用,无疑是培养新型人才的一个重要环节。计算机技术一深入到人类生活的各个角落,与其他学科严密结合,成为推动各学科飞速开展的有力的催化剂。无论学什么专业。都必须具备计算机的根底知识和应用能力。计算机既是现代科学技术的结晶,又是大众化的工具。学习计算机知识,不仅能够掌握有关的知识,而且能培养人们的信息素养。它是高等学校全面素质教育中极为重要的一局部。
C语言是在国外使用的一种计算机语言。C语言功能丰富、表达能力强、使用灵活方便、应用面广、目标程序效率高、可移植性好、既具有高级语言的优点,又具有低级语言的许多特点,因此特别适合于编写系统软件。现在大多数的高校都把C语言作为第一门计算机语言进展教学,这是可行的,学生是能够学习好的。
随着市场产品销售的增加,销售管理工作也变得越来越繁重,而且经常产生过失。如果仍用手工操作或使用相当烦琐的软件,既浪费了人力,又浪费了物力,效率无法提高。为此我们开发一个简单的销售管理系统,开发此销售管理系统软件,销售人员和管理者进展销售信息管理,方便操作者对产品、销售员的销售资料、销售信息进展输入、添加、查询与修改等操作,使销售管理人员的效率得到大幅度的提高。
程序设计一般由两局部组成:算法和数据结构。合理的选择和实现一个数据结构和处理这些数据结构具有同样的重要性。在销售管理程序中,由于预计记录数据相对于一个公司会很大,除了能够增加、删除、打印报表等外,更多的情况是保存、查询、排序等,所以选用动态链表、结构体等来实现查询、排序、保存等功能。
关键词销售管理,链表,C语言
. . . .
目 录
摘要I
第1章绪论1
1.1设计背景1
1.2设计目的1
1.3任务划分与分工1
1.3.1任务划分1
1.3.2任务分工2
第2章 需求分析3
2.1需求概述3
2.2需求说明3
2.3 C语言的特点3
第3章总体设计4
3.1系统功能4
3.2系统流程4
3.3根本数据结构6
第4章详细设计7
4.1组长:王超7
4.1.1设计思路7
4.1.2函数流程图和代码7
4.2组员:王帆11
4.2.1设计思路11
4.2.2函数流程图和代码11
4.3组员:建松14
4.3.1设计思路14
4.3.2函数流程图和代码14
4.4组员:宋竞18
4.4.1设计思路18
4.4.2函数流程图和代码18
第5章结论22
致26
参考文献27
. . . .
第1章 绪论
1.1设计背景
随着市场产品销售的增加,销售管理工作也变得越来越繁重,而且经常产生过失。如果仍用手工操作或使用相当烦琐的软件,既浪费了人力,又浪费了物力,效率无法提高。为此我们开发一个简单的销售管理系统,开发此销售管理系统软件,销售人员和管理者进展销售信息管理,方便操作者对产品、销售员的销售资料、销售信息进展输入、添加、查询与修改等操作,使销售管理人员的效率得到大幅度的提高,而利用C语言编写的,同时也节省了管理人员在对销售员的销售情况与产品销售情况进展录入、评估的时间,可谓是一举两得。
而今,C语言成了在国外使用的一种计算机语言。C语言功能丰富、表达能力强、使用灵活方便、应用面广、目标程序效率高、可移植性好、既具有高级语言的优点,又具有低级语言的许多特点,因此特别适合于编写系统软件。现在大多数的高校都把C语言作为第一门计算机语言进展教学,这是可行的。
计算机技术的飞速开展,改变了世界,也改变了人类的生活。新世纪的大学生,应当站在时代开展的前列,掌握现代科学技术知识,调整自己的知识结构和能力结构,以适应社会开展的要求。
1.2设计目的
这次设计主要是应用了C程序设计中的一些算法,还有一些函数的调用,结构体的应用等,根据他们的根本思想来编写程序。程序包括的主要容可以对销售管理系统进展输入、修改、保存、查询、删除、排序、显示等操作,设计一个有关销售信息管理的程序,来方便人们对信息更方便的使用,经过这样一个过程来巩固和完善自己所学的知识,同时来培养一下自己的实践能力。通过本设计可以加深理解利用程序设计思想开发一个系统的整个流程,提高分析问题、解决问题和实际动手的能力。
通过本设计可以加深理解利用程序设计思想开发一个系统的整个流程,提高分析问题、解决问题和实际动手的能力为了人们能够更快的记录销售管理信息,使人们不再因为添加、排序销售信息而苦恼。
1.3任务划分与分工
1.3.1任务划分
1、任务1
任务对象:组长
* 函数名 : main
* 函数名 : printwind:显示程序启动界面
* 函数名 : listmemu:显示功能菜单〔须包括系统流程图中的根本功能〕;根据用户选择调用相应的功能函数;具有返回上级菜单功能。
* 函数名 : creat:添加销售记录;
*******************************************************************************************
2、任务2
任务对象:组员
* 函数名 : savefile:将当月销售信息存入指定的文件中;由用户指定文件名;文本文件、二进制文件皆可。
* 函数名 : readfile:将销售信息从文件读入动态链表中;由用户指定文件名;
* 函数名 : search:按工号查找销售记录;显示查找到的记录。
*******************************************************************************************
3、任务3
任务对象:组员
* 函数名 : printoneday:显示某天的销售信息;包括每人、每种商品销售数量。
* 函数名 : printrecord:显示月销售信息;包括每人、每种商品销售数量。
* 函数名 : delete:删除某一天的记录。
*******************************************************************************************
4、任务4
任务对象:组员
* 函数名 : sorttotalsum:按照销售额对销售员进展排序;按照销售量对商品排序。
* 函数名 : countproduct:对每种商品的日销售额、月销售额、销售员的月销售总量进展计算。
*******************************************************************************************
1.3.2任务分工
具体任务分工如表1-1所示
表1-1 任务分工表
组长
组员
王超
建松
王帆
宋竞
学号
16
14
09
07
任务
任务1
任务3
任务2
任务4
. . . .
第2章 需求分析
2.1需求概述
随着市场产品销售的增加,销售管理工作也变得越来越繁重,而且经常产生过失。如果仍用手工操作或使用相当烦琐的软件,既浪费了人力,又浪费了物力,效率无法提高。为此我们开发一个简单的销售管理系统,开发此销售管理系统软件,销售人员和管理者进展销售信息管理,方便操作者对产品、销售员的销售资料、销售信息进展输入、添加、查询与修改等操作,使销售管理人员的效率得到大幅度的提高。
2.2需求说明
1.整个系统均用C语言实现;
2.在存操作时采用结构体链表来实现学生成绩的数据结构设计,并将销售记录进展保存;
3.系统具有输入、显示、查询、删除、排序、插入、统计根本功能。
2.3 C语言的特点
1.简洁紧凑、灵活方便;
2.运算符丰富;
3.数据结构丰富;
4.C是结构式语言;
5.C语言允许直接访问物理地址,可以直接对硬件进展操作;
因此C语言既具有高级语言的功能,又具有低级语言的许多功能,能够象汇编语言一样对位、字节和地址进展操作,而这三者是计算机最根本的工作单元,可以用来写系统软件。
. . . .
第3章 总体设计
3.1系统功能
根据要求该系统主要具有以下功能:
1、 输入:录入销售记录。
2、 打印:将销售信息以报表的形式输出并打印报表。
3、 查询:查询某天的销售记录。
4、 删除:删除某天的销售记录。
5、 排序:对人员的销售量或产品的销售量进展排序并输出。
6、 统计:对人员或产品的销售量进展统计。
如图3.1 所示
输入
打印
查询
删除
排序
销售管理系统
统计
菜单
图3.1 系统功能图
3.2系统流程
根据功能与要求画出主系统流程图,如图3.2 所示
开始
完毕
输出窗口
输入选项n
输出菜单
清屏
n=0?
n=1?
n=2?
n=3?
n=4?
n=5?
n=6?
清屏
清屏
清屏
清屏
清屏
清屏
调用creat函数
N
N
N
N
N
N
调用print函数
调用delete函数
调用sorttotalsum函数
调用countproduct函数
调用serch函数
调用readfile函数
调用savefile函数
图3.2 系统主流程图
3.3根本数据结构
typedef struct seller
{
int sellman_num; /*员工编号*/
int sell_sum[5]; /*每人每种产品月销售之和*/
}SELLER;
typedef struct product
{
int product_sum; /* 产品编号 */
int sell_sum; /* 月销售数量 */
}PRODUCT;
typedef struct sell
{
int sellman_num; /* 员工编号 */
int product_sum; /* 产品编号 */
int sell_sum; /* 销售数量 */
int day; /* 日期 */
struct sell *next;
}SELL;
全局变量:
SELLER sellers[4];
PRODUCT product[5];
SELL *sHead;
. . . .
第4章 详细设计
4.1组长:王超
4.1.1设计思路
根据任务划分与分工具体设计思路如下:
1、建立“main〞函数,在函数里依次调用printwind函数和listmenu函数。
2、建立“printwind〞函数,在函数里输出系统窗口,并使其驻留一会,然后清屏。
3、建立“listmenu〞函数,输出主菜单,然后等待输入选项,根据选项执行相应功能。
4、建立“creat〞函数,等待要输入的信息,信息输入完成后将其插入到链表中。
4.1.2函数流程图和代码
1、 main函数
流程图如图4.1 所示:
开始
调用printwind
初始化全局变量
退出
调用listmemu
图4.1 main函数流程图
代码:
void main()
{
SELLER sellers[4]={{1,{0,0,0,0,0}},{2,{0,0,0,0,0}},{3,{0,0,0,0,0}},{4,{0,0,0,0,0}}};
PRODUCT product[5]={{1,0},{2,0},{3,0},{4,0},{5,0}}; /* 初始化全局变量 */
SELL *sHead=NULL;
void printwind(); /* 函数声明 */
void listmenu();
printwind(); /* 调用函数 */
listmenu();
}
2、printwind函数
流程图如图4.2 所示:
开始
输出系统窗口
使窗口驻留一会
清屏
完毕
图4.2 printwind函数流程图
代码:
void printwind()
{
long n;
printf("\n 版本1.0\n〞);
printf(“\n***********************\n"); /* 输出窗口 */
printf("\n 制作:〞);
printf(“\n 王超〞);
printf(“\n 建松〞);
printf(“\n 王帆〞);
printf(“\n 宋 竞");
for(n=0;n<200000000;n++); /* 使窗口驻留 */
system("cls"); /* 清屏 */
}
3、listmenu函数
函数流程图如图4.3 所示:
开始
声明函数
清屏
输出菜单
执行相应功能
完毕
菜单项选择择
图4.3 listmenu函数流程图
代码:
void listmenu()
{
void readfile(); /* */
void savefile();
void creat();
void serch();
void print();
void delete();
void sorttotalsum();
void countproduct();
char n='1';
readfile();
for(;n!='0';)
{
system("cls");
printf("\n 菜单\n***********************"); /* 输出菜单 */
printf("\n 0.退出\n 1.输入\n 2.查询\n 3.打印\n 4.删除");
printf("\n 5.排序\n 6.统计\n***********************");
printf("\n 输入选项:");
n=getchar(); /* 输入选项给 n */
if(n=='0') { savefile(); exit(); } /* 根据 n 的值执行相应的选项 */
else if(n=='1') { system("cls"); creat(); }
else if(n=='2') { system("cls"); serch(); }
else if(n=='3') {system("cls"); print(); }
else if(n=='4') {system("cls"); delete(); }
else if(n=='5') {system("cls"); sorttotalsum(); }
else if(n=='6') { system("cls"); scountproduct(); }
else { system("cls"); printf("输入有误,请重新输入。\n"); }
}
}
4、creat函数
函数流程图如图4.4 所示:
开始
完毕
输入要添加的信息
将信息插入到链表中
继续添加?
Y
N
图4.4 creat函数流程图
代码:
void creat()
{
void insert();
extern SELL charu={0,0,0,0,NULL};
char n='Y';
for(;n=='Y';)
{
printf("\n请输入要插入的信息\n输入员工编号:");
sacnf("%d",&charu.sellman_num);
printf("\n输入产品编号:");
scanf("%d",&charu.product_sum);
printf("\n输入销售量:");
scanf("%d",&charu.sell_sum);
printf("\n输入销售日期:");
scanf("%d",charu.day);
insert();
printf("是否继续插入? Y/N");
scanf("%c",&n);
}
}
void insert()
{
SELL *p0,*p1,*p2;
p1=sHead;
p0=&charu;
if(sHead==NULL)
{ sHead=p0;p0->next=NULL; }
else
{
while((p0->num>p1->num)&&(p1->next!=NULL))
{ p2=p1;p1=p1->next; }
if(p0->num<p1->num)
{
if(sHead==p1) sHead=p0;
else p2->next=p0;
p0->next=p1;
}
else { p1->next=p0;p0->next=NULL; }
}
}
展开阅读全文