销售管理系统Word下载.docx

上传人:b****2 文档编号:3849574 上传时间:2023-05-02 格式:DOCX 页数:24 大小:20.96KB
下载 相关 举报
销售管理系统Word下载.docx_第1页
第1页 / 共24页
销售管理系统Word下载.docx_第2页
第2页 / 共24页
销售管理系统Word下载.docx_第3页
第3页 / 共24页
销售管理系统Word下载.docx_第4页
第4页 / 共24页
销售管理系统Word下载.docx_第5页
第5页 / 共24页
销售管理系统Word下载.docx_第6页
第6页 / 共24页
销售管理系统Word下载.docx_第7页
第7页 / 共24页
销售管理系统Word下载.docx_第8页
第8页 / 共24页
销售管理系统Word下载.docx_第9页
第9页 / 共24页
销售管理系统Word下载.docx_第10页
第10页 / 共24页
销售管理系统Word下载.docx_第11页
第11页 / 共24页
销售管理系统Word下载.docx_第12页
第12页 / 共24页
销售管理系统Word下载.docx_第13页
第13页 / 共24页
销售管理系统Word下载.docx_第14页
第14页 / 共24页
销售管理系统Word下载.docx_第15页
第15页 / 共24页
销售管理系统Word下载.docx_第16页
第16页 / 共24页
销售管理系统Word下载.docx_第17页
第17页 / 共24页
销售管理系统Word下载.docx_第18页
第18页 / 共24页
销售管理系统Word下载.docx_第19页
第19页 / 共24页
销售管理系统Word下载.docx_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

销售管理系统Word下载.docx

《销售管理系统Word下载.docx》由会员分享,可在线阅读,更多相关《销售管理系统Word下载.docx(24页珍藏版)》请在冰点文库上搜索。

销售管理系统Word下载.docx

3、功能实现设计

1

3.1 

总体设计

根据上面的分析,可以将这个系统分为如下五大模块:

查看每人每种产

品的销售额 

、按销售额对销售员排序、对每种产品总销售额从高到低排序、

输出统计报表和退出。

其中主要模块是前四个模块。

3.2 

流程图

开始

判断文件是

否能打开

3.3 

详细设计:

3.3.1【头文件和预定义】

#include<

stdio.h>

conio.h>

stdlib.h>

string.h>

#define 

M

3.3.2【功能函数声明】

vvoid 

detail();

void 

foreach();

menu();

推出系统

读取便条上的信

主菜单

product();

每个人每种

销售员销售业绩

统计总销售额并

输出统计表

readdata();

产品销售额

seller();

total();

choice();

排序

3.3.3【数据结构】

选择

退出系统 

返回主菜

原始数据有销售员代号、产品代号和销售额,所以定义一个全局结构体数组

scrip用于保存原始数据。

然后定义全局变量n保存纸条数目,定义数组s用于保

存分类后的信息。

struct 

ss

{

int 

sid;

//销售员代号

2

pid;

//产品代号

sn;

//销售额

}ss[M];

n;

//纸条数目

s[4][5]={{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0},{0,0,0,0,0}};

//用

于保存员工和产品信息

3.3.4【主函数】

显示程序设计者相关信息和调用文件读取函数、数据初始化函数和主菜单函数

main()//入口函数,即主函数

//读取文件数据

//根据文件初始数据初始化便于操作的数组

//显示主菜单

}

3.3.4-1【文件读取函数】readdata()

读出便条中的内容,并保存到文件结构体中

readdata()//从文件读取数据

FILE 

*fp;

//定义文件指针

if((fp=fopen("

list.txt"

"

r"

))==NULL)

printf("

Can'

open 

the 

file!

\n"

);

exit(0);

else

for(n=0;

!

feof(fp);

n++)

fscanf(fp,"

%d 

%d\n"

&

ss[n].sid,&

ss[n].pid,&

ss[n].sn);

//保存文件数据到结构体

fclose(fp);

3.3.4-2【文件读取函数】foreach()

将保存到结构体中的信息按产品分类,再根据销售员进行分类,将信息存到数

组当中。

foreach()//从纸条读取数据并分类整理

i;

for(i=0;

i<

i++)//遍历所有纸条

switch(ss[i].pid)

//按产品分大类,根据大类分销售员小类,累加

各人各产品销售数量

3

case 

1:

switch(ss[i].sid)

s[0][0]+=ss[i].sn;

break;

2:

s[1][0]+=ss[i].sn;

3:

s[2][0]+=ss[i].sn;

4:

s[3][0]+=ss[i].sn;

s[0][1]+=ss[i].sn;

s[1][1]+=ss[i].sn;

s[2][1]+=ss[i].sn;

s[3][1]+=ss[i].sn;

s[0][2]+=ss[i].sn;

s[1][2]+=ss[i].sn;

s[2][2]+=ss[i].sn;

s[3][2]+=ss[i].sn;

s[0][3]+=ss[i].sn;

s[1][3]+=ss[i].sn;

s[2][3]+=ss[i].sn;

s[3][3]+=ss[i].sn;

5:

s[0][4]+=ss[i].sn;

s[1][4]+=ss[i].sn;

s[2][4]+=ss[i].sn;

s[3][4]+=ss[i].sn;

4

};

}

3.3.4-3【主菜单函数】menu()

显示系统功能菜单以供用户选择相关功能使用,根据用户选择分别可调用

detail():

计算上个月每个人每种产品的销售额

seller():

按销售额对销售员进行排序,输出排序结果(销售员代号)

product():

统计每种产品的总销售额,对这些产品按从高到低的顺序输出排序

结果(需输出产品代号和销售额)

exit(0):

退出系统

menu()

w,c;

do{

puts("

\t\t*********菜单*********************\n\n"

\t\t 

1.查看每人每种产品的销售额\n"

2.按销售额对销售员排序(销售员代号)\n"

3.对每种产品总销售额从高到低排序(产品代号和销售额)

4.输出统计报表\n"

5.退出\n"

\n\n\t\t*********************************************\n"

请选择(1-5):

]\b\b"

scanf("

%d"

c);

if(c<

1||c>

5)//错误输入则重新获取输入

w=1

else 

w=0;

while(w==1);

switch(c)//根据输入实现相应函数调用

//每个销售员每种产品的销售额统计

5

3.3.5【功能函数】

5-1【每人每种产品销售额统计函数】detail()

detail()//显示销售情况

i,j;

4;

i++)//遍历销售员

\n\t\t%d 

号销售员销售情况:

i+1);

for(j=0;

j<

5;

j++)

//按销售员分类遍历所有产品并显示信息

\t\t%d 

号产品销售数量:

j+1,s[i][j]);

3.3.5-1【销售员销售业绩排序函数】seller()

seller()

i,j,k;

sp[4]={0,0,0,0};

i++)

sp[i]+=s[i][j];

//计算每单个销售员所有产品销售数量

i++)//比较四次,每次选出最大数

{k=0;

//用于标记单轮最大数

if(sp[k]<

sp[j])k=j;

//获取最大数标号

第%d 

名是%d 

号销售员!

i+1,k+1);

sp[k]=-1;

//输出最大数和排名,将最大数标记为负

3.3.5-2【总销售额统计函数】void 

product()

6

product()//与 

seller()原理一样,用于对产品进行统计

p[5]={0,0,0,0,0};

p[j]+=s[i][j];

k=0;

if(p[k]<

p[i])k=i;

号产品!

\t 

销量为%

d!

j+1,k+1,p[k]);

p[k]=-1;

3.3.5-3【统计报表输出函数】total()

统计每种产品的总销售额,对这些产品按从高到低的顺序输出排序结果(需输

出产品代号和销售额)

total()//输出报表

{int 

\n\t 

销售员\t 

产品\t 

销量\n"

%d\t 

i+1,j+1,s[i][j]);

3.3.6【公共函数】

【选择函数】choice()

选择退出系统或则返回主菜单

choice()//用于输出信息功能选择

c;

请选择接下来想做什么\t1>

返回菜单\t2>

退出系统[ 

if(c==1)

puts('

\n'

7

4、运行结果(附带抓图)

List.txt(便条)文件中数据如下:

111

122

133

148

159

213

223

234

245

256

311

321

334

345

356

412

423

434

445

456

运行结果

显示主菜单:

8

查看每人每种产品的销售额运行结果:

9

按销售额对销售员按顺序排序(销售员代号)运行结果

对每种产品销售额从高到低排序运行结果:

10

统计报表运行结果:

11

5、总结

通过这次 

程序设计,我掌握了模块化设计方法,能够深入的理解结构化

程序设计思想,熟练运用结构化程序设计方法,提高了运用 

语言进行程序设

计的能力。

虽然刚开始我对文件的读写感到很茫然,但是通过查找网上资料和

翻阅有关书籍,我逐渐领悟了文件读写的核心思想。

因此,对于文件读写的操

作。

更重要的是对程序的调试有了显著的提高。

我发现我对程序的设计越来越

感兴趣了,我决定今后在这一方面下一番功夫,取得一些成绩。

6、源程序

/*调用 

exit 

函数*/

155/*宏定义*/

//销售员代号

//产品代号

//用于保存员工和产品信息

main() 

//入口函数,即主函数

p

//读取文件数据

12

//按产品分大类,根据大类分销售员小类,累加个人各产品

销售数量

13

\t\t********************菜单*********************\n\n"

3.对每种产品总销售额从高到低排序(产品代号和销售额)\n"

w=1;

getchar();

14

15

{k=0;

销量为%d!

16

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2