C语言课程设计销售管理系统说明书.doc

上传人:wj 文档编号:2124038 上传时间:2023-05-02 格式:DOC 页数:29 大小:84KB
下载 相关 举报
C语言课程设计销售管理系统说明书.doc_第1页
第1页 / 共29页
C语言课程设计销售管理系统说明书.doc_第2页
第2页 / 共29页
C语言课程设计销售管理系统说明书.doc_第3页
第3页 / 共29页
C语言课程设计销售管理系统说明书.doc_第4页
第4页 / 共29页
C语言课程设计销售管理系统说明书.doc_第5页
第5页 / 共29页
C语言课程设计销售管理系统说明书.doc_第6页
第6页 / 共29页
C语言课程设计销售管理系统说明书.doc_第7页
第7页 / 共29页
C语言课程设计销售管理系统说明书.doc_第8页
第8页 / 共29页
C语言课程设计销售管理系统说明书.doc_第9页
第9页 / 共29页
C语言课程设计销售管理系统说明书.doc_第10页
第10页 / 共29页
C语言课程设计销售管理系统说明书.doc_第11页
第11页 / 共29页
C语言课程设计销售管理系统说明书.doc_第12页
第12页 / 共29页
C语言课程设计销售管理系统说明书.doc_第13页
第13页 / 共29页
C语言课程设计销售管理系统说明书.doc_第14页
第14页 / 共29页
C语言课程设计销售管理系统说明书.doc_第15页
第15页 / 共29页
C语言课程设计销售管理系统说明书.doc_第16页
第16页 / 共29页
C语言课程设计销售管理系统说明书.doc_第17页
第17页 / 共29页
C语言课程设计销售管理系统说明书.doc_第18页
第18页 / 共29页
C语言课程设计销售管理系统说明书.doc_第19页
第19页 / 共29页
C语言课程设计销售管理系统说明书.doc_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C语言课程设计销售管理系统说明书.doc

《C语言课程设计销售管理系统说明书.doc》由会员分享,可在线阅读,更多相关《C语言课程设计销售管理系统说明书.doc(29页珍藏版)》请在冰点文库上搜索。

C语言课程设计销售管理系统说明书.doc

*******************

实践教学

*******************

兰州理工大学

计算机与通信学院

2010年春季学期

计算机语言课程设计

题目:

销售管理系统

专业班级:

姓名:

学号:

指导教师:

成绩:

_________________

目录

摘要 1

前言 2

正文 3

1. 问题描述 3

2. 系统总体设计 4

3. 详细设计 5

4. 软件使用说明书 26

总结 27

参考文献 28

致谢 30

前言

近年来,随着销售规模的不断扩大,职员数目和产品数量也相应的增加,有关职员和产品的各种信息量也成倍增加,面对着庞大的信息量,传统的人工方式管理会导致销售系统管理上的混乱,人力与物力过多浪费,销售管理费用的增加,从而使公司的负担过重,影响整个公司的运作和控制管理,因此,必须制定一套合理、有效,规范和实用的销售管理系统,对各种资料进行集中统一的管理。

系统开发的总的设计目标是实现销售管理的系统化、规范化和自动化,实现对各种资料的集中统一的管理。

摘要

以某公司销售管理业务为背景,设计、开发一套“销售管理系统”软件。

通过该题目的设计过程,可以培养学生结构化程序设计的思想,加深对高级语言基本语言要素和控制结构的理解,针对c语言中的重点和难点内容进行训练,独立完成有一定工作量的程序设计任务,同时强调好的程序设计风格。

得到软件工程的综合训练,提高解决实际问题的能力。

关键字销售,管理,总结

正文

1问题描述

某公司有四个销售员(编号:

1-4),负责销售五种产品(编号:

1-5)。

每个销售员都将当天出售的每种产品各写一张便条交上来。

每张便条包含内容:

 销售员的代号 、产品的代号、这种产品的当天的销售额 。

每位销售员每天可能上缴0-5张便条。

假设,收集到了上个月的所有便条,编写一个处理系统,读取上个月的销售情况,进行如下处理:

系统以菜单方式工作,录入信息用文件保存;计算上个月每个人每种产品的销售额; 按销售额对销售员进行排序,输出排序结果(销售员代号);统计每种产品的总销售额,对这些产品按从高到底的顺序,输出排序结果(需输出产品的代号和销售额);输出统计报表。

  

2系统总体设计

1:

整体结构流程图销售管理系统

职员信息查询

产品信息

销售情况

2、添加职员信息流程图

空链表

盛情存放一个结点内存空间

查找链表尾

表头=新声请空间地址

职员编号

职员人数

声请存放一个结点的内存空间将链表表尾指针新声请空间地址

图书数目自动加1

循环,使其能输入多种图书信息

通过调用查询函数输入职员信息

继续输入

表尾指针=NULL,返回表头指针,结束退出

申请存放一个节点内存

3删除职员信息流程图

空链表

显示无任何次信息

输入要删除职员信息的编号在链表中查找是

显示查无此人

查到与否

显示查无此人

删除与否是

放弃

删除

4、添加产品信息流程图

空链表

盛情存放一个结点内存空间

查找链表尾

表头=新声请空间地址

产品编号

产品数码

声请存放一个结点的内存空间将链表表尾指针新声请空间地址

图书数目自动加1

循环,使其能输入多种产品信息

通过调用查询函数输入产品信息

继续输入

表尾指针=NULL,返回表头指针,结束退出

申请存放一个节点内存

5删除产品信息流程图

空链表

显示无任何次信息

输入要删除产品信息的编号在链表中查找是

显示查无此产品

查到与否

显示查无此产品

删除与否是

放弃

删除

2:

系统的执行应从功能菜单的选择开始,依据用户的选择来进行后续处理直到

用户选择退出系统为止。

其间应对用户的选择做出判断和异常处理。

3设计详细

#include

#include

#include

#include

#defineZ5

#defineR4/*定义宏常量便于程序的一般化*//*R表示销售员个数*/

typedefstruct/*缩短结构体变量名*/

{

intshangpin[Z];/*定义结构体便于信息的存储和读写,辨别*//*R是表示商品的种类,最后一个为该销售员商品总和*/

}data;

voidmenu()

{printf("*******************************************************\n");

printf("0.结束操作\n");

printf("1.计算上个月每个人每种产品的销售额\n");

printf("2.按销售额对销售员进行排序,输出排序结果\n");

printf("3.统计每种产品的总销售额,输出排序结果\n");

printf("4.输出统计报表\n");

printf("******************************************************\n");

}

voiddata_read(data*x)/*读入函数使程序简洁*/

{

FILE*fp;

charfname[10];

inti;

printf("您想查询哪个月?

\n");

printf("请输入月份:

");/*输入文件名,这样可以进行各个月份信息读入*/

scanf("%s",fname);

strcat(fname,".txt");/*连接文件属性*/

if((fp=fopen(fname,"rb"))==NULL)/*打开文件*/

{

printf("cannotopenthefile\n");

exit(0);

}

for(i=0;i

if(fread(x+i,sizeof(data),1,fp)!

=1)

printf("读入信息出错!

\n");

}

voiddata_count(data*x)/*计算上个月每个人每种产品的销售额*/

{

FILE*fp;

charfname[10];

intj,t;/*用于控制循环*/

inti,k,s;/*用于定义职工序号,产品序号,产品数量*/

system("cls");

printf("您想计算哪个月?

\n");

printf("请输入月份:

");/*输入文件名,这样可以进行各个月份信息写入*/

scanf("%s",fname);

strcat(fname,".txt");

if((fp=fopen(fname,"wb"))==NULL)/*打开文件*/

{

printf("cannotopenthefile\n");

exit(0);

}

for(j=0;j

for(t=0;t

(x+j)->shangpin[t]=0;

printf("pleaseputtheinformationaboutthe职工编号,产品编号,销售数量\n");/*写入信息*/

for(j=0;;j++)

{

scanf("%d%d%d",&i,&k,&s);

if(i==0)/*输入职工为0时结束信息输入*/

break;

if(i>R||i<0||k>Z||k<0)

{

printf("theinformationerror!

\n");/*避免输入信息出错*/

continue;

}

else

(x+i-1)->shangpin[k-1]=(x+i-1)->shangpin[k-1]+s;/*统计各个人的各种产品的数量,-1为了和数组中的序号相匹配*/

}

for(j=0;j

if(fwrite((x+j),sizeof(data),1,fp)!

=1)/*把信息写入文件中便有以后调用*/

printf("writeerror!

\n");

fclose(fp);/*关闭文件避免信息遗漏*/

}

voidrange_sxy(data*x)/*按销售额对销售员进行排序,输出排序结果*/

{

FILE*fp;

charfname[10];

inti,k,j,t,bianhao[R]={0},z;

system("cls");

printf("你要哪个月的?

\n");

printf("请输入月份:

");/*输入文件名,这样可以进行各个月份信息读入*/

scanf("%s",fname);

strcat(fname,".txt");

if((fp=fopen(fname,"rb"))==NULL)/*打开文件*/

{

printf("cannotopenthefile\n");

exit(0);

}

for(i=0;i

if(fread(x+i,sizeof(data),1,fp)!

=1)

printf("读入信息出错!

");/*读入信息提示*/

for(i=0;i

bianhao[i]=i++;

printf("请输入按何种产品排序\n");

scanf("%d",&k);

k=k-1;/*便于与结构体中的数组值对应*/

for(i=0;i

{

t=i;

for(j=i+1;j

if((x+bianhao[t])->shangpin[k]<(x+bianhao[j])->shangpin[k])/*调用职工各自对应的结构体内的产品数量*/

t=j;

if(t!

=i)

{

z=bianhao[i];

bianhao[i]=bianhao[t];

bianhao[t]=z;

}

}

printf("按%d产品对销售员排序为:

\n",k+1);

for(i=0;i

printf("%5d",bianhao[i]+1);

getch();

fclose(fp);

}

voidrange_shangpin(data*x)/*统计每种产品的总销售额,输出排序结果*/

{

FILE*fp;

charfname[10];

inti,j,sum[Z]={0},bianhao[Z]={0},z,t,k;

system("cls");

printf("您想计算哪个月的?

\n");

printf("请输入月份:

");/*输入文件名,这样可以进行各个月份信息读入*/

scanf("%s",fname);

strcat(fname,".txt");

if((fp=fopen(fname,"rb"))==NULL)/*打开文件*/

{

printf("cannotopenthefile\n");

exit(0);

}

for(i=0;i

if(fread(x+i,sizeof(data),1,fp)!

=1)

printf("读入信息出错!

");

for(i=0;i

for(j=0;j

sum[i]=sum[i]+(x+j)->shangpin[i];

for(i=0;i

bianhao[i]=i++;

for(i=0;i

printf("%3d",bianhao[i]);

for(i=0;i

{

t=i;

for(j=i+1;j

if(sum[t]

t=j;

if(t!

=i)

{

k=sum[i];

sum[i]=sum[t];

sum[t]=k;

z=bianhao[i];

bianhao[i]=bianhao[t];

bianhao[t]=z;

}

}

printf("输出产品排序\n");

printf("产品编号数量\n");

for(i=0;i

printf("%-10d%-10d\n",bianhao[i]+1,sum[i]);

getch();

fclose(fp);

}

voiddata_out(data*x)/*输出统计报表*/

{

FILE*fp;

charfname[10];

inti,j,sum[Z+1]={0};

system("cls");

printf("您想计算哪个月?

\n");

printf("请输入月份:

");/*输入文件名,这样可以进行各个月份信息读入*/

scanf("%s",fname);

strcat(fname,".txt");

if((fp=fopen(fname,"rb"))==NULL)/*打开文件*/

{

printf("cannotopenthefile\n");

exit(0);

}

for(i=0;i

if(fread(x+i,sizeof(data),1,fp)!

=1)

printf("读入信息出错!

");

for(i=0;i

for(j=0;j

sum[i]=sum[i]+(x+j)->shangpin[i];

for(i=0;i

sum[Z]=sum[Z]+sum[i];

printf("输出统计报表如下:

\n");/*按要求输出统计表*/

printf("产品代号销售之和销售员代号\n");

for(i=0;i

for(j=0;j

printf("%-10d%-10d%-10d\n",j+1,(x+i)->shangpin[j],i+1);

printf("***********************************\n");

for(i=0;i

{

if(i==0)

printf("%d产品之和%-10d总和%-10d\n",i+1,sum[i],sum[Z]);

else

printf("%d产品之和%-10d\n",i+1,sum[i]);

}

getch();

}

voidmain()

{

inti,choice;

datasxy[R];/*R表示职工的个数,前面的宏常量*/

for(i=0;;i++)

{

system("cls");/*清频命令*/

menu();/*菜单函数提示用户怎样选择*/

printf("你想做什么?

\n");

printf("请选择:

");/*输入要进行的操作*/

scanf("%d",&choice);

if(choice==0)/*退出程序*/

break;

else

switch(choice)

{

case1:

data_count(sxy);break;/*计算上个月每个人每种产品的销售额*/

case2:

range_sxy(sxy);break;/*按销售额对销售员进行排序,输出排序结果*/

case3:

range_shangpin(sxy);break;/*统计每种产品的总销售额,输出排序结果*/

case4:

data_out(sxy);break;/*输出统计报表*/

}

}

}

4软件使用说明书

(1)根据正确的提示安装软件。

(2)Intel486以上系列、AMDK6以上系列等PC台式机和便携式电脑都可运行。

(3)打开该程序系统,浏览菜单,根据需要选择功能,进行各项操作。

操作如下:

点击开始菜单,进入菜单选择。

输入:

将所需的信息输入。

输出:

职员信息、产品信息、销售信息。

输入:

根据不同的需要选择,当信息输入显示出错误时,进入浏览信息,找出错误。

当错误不能改正,则退出浏览信息。

进入查询信息:

则屏幕会出现两个对话框——按职员名和按产品名查找,查处相应的所需信息。

当查询不能显示需要时进入修改程序,把所输入的信息进行修改,使之正确能够正常运行或进入删除信息中,重新输入自己所要的信息。

当信息输入正确,进入你所需要的菜单程序中:

职员信息:

显示职员的编号、性别、年龄等。

产品信息:

显示出产品的生产日期,保质期等。

销售信息:

显示出出售产品的数量及价格等。

总结

该系统以销售管理为背景,涵盖了管理员对职员信息管理的多种功能,并且有一定的可行性和安全性,确保了各项指定

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

当前位置:首页 > PPT模板 > 商务科技

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

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