仓库物资管理报告.docx

上传人:b****3 文档编号:3174544 上传时间:2022-11-18 格式:DOCX 页数:28 大小:21.54KB
下载 相关 举报
仓库物资管理报告.docx_第1页
第1页 / 共28页
仓库物资管理报告.docx_第2页
第2页 / 共28页
仓库物资管理报告.docx_第3页
第3页 / 共28页
仓库物资管理报告.docx_第4页
第4页 / 共28页
仓库物资管理报告.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

仓库物资管理报告.docx

《仓库物资管理报告.docx》由会员分享,可在线阅读,更多相关《仓库物资管理报告.docx(28页珍藏版)》请在冰豆网上搜索。

仓库物资管理报告.docx

仓库物资管理报告

 

程序设计基础课程设计

 

设计题目:

仓库物资管理系统

班级:

计1110

姓名:

黄秀美

学号:

20111221095

 

2012年9月6日

1.课程设计目的和要求

我们课程设计的主要目的是为了让我们贯穿大一一年所学的C语言知识,让我们能应用自如,为我们后面的学习奠下更坚实的基础。

课程设计要求每个同学根据自己所学的知识对课程题目进行思索并编程,然后通过交流和查找,设计出一个现实可实施的C语言代码。

2.系统总体设计

设计主要包括了6大功能:

1.创建库存记录文件,根据提示输入若干电器的信息,并将信息保存至一个文件中。

2.物资入库管理,创建一个入库记录文件,每次有物资入库,则按入库记录要求输入各项信息,并将该次的入库信息添加到文件中,同时修改相应的库存记录文件。

3.物资出库管理,创建一个出库记录文件,每次有物资出库,则按出库记录要求输入各项信息,并将该次的出库信息添加到文件中,同时修改相应的库存记录文件。

注意:

物资出库时要检查出库数量的合法性(即出库数量必须小于库存数量)。

4.按不同条件进行查询操作,输出满足条件的物资信息。

(1)输入电器名称,在库存记录文件中查找相应的物资信息并输出。

(2)输入品牌名称,在库存记录文件中查找该品牌的所有电器信息并输出。

(3)输入提货人姓名,输出该提货人对应的出库记录。

(4)输入送货人姓名,输出该送货人对应的入库记录。

5.按不同条件对物资信息进行统计工作。

(1)输入一个日期(年.月),统计该月每种电器的出库数目,并输出。

(2)输入一个日期(年.月),统计该月每种品牌电器的出库数目,并输出。

(3)统计该仓库的商品总价值。

(所有入库记录中入库价格*入库数量)

(4)计算该仓库的总利润。

((出库价格–所有入库记录价格)*出库数量)

6.按不同条件对信息进行排序并输出

(1)根据电器名称,对库存信息从小到大进行排序(注:

电器名称使用字符串比较函数strcmp比较大小),并输出排序后的电器品牌名称。

(2)根据库存数量,对库存信息进行排序,并按库存量从高到低的顺序输出电器信息。

2.1系统功能模块图printf("\t====================================================\n");

printf("\t========仓库物资管理系统========\n");

printf("\t========1、创建库存记录文件========\n");

printf("\t========2、物资入库管理========\n");

printf("\t========3、物资出库管理========\n");

printf("\t========4、查询物资信息========\n");

printf("\t========5、统计物资信息========\n");

printf("\t========6、排序物资信息========\n");

printf("\t========请选择功能(1-6)========\n");

printf("\t====================================================\n");2.2数据结构设计

对全局变量,结构体类型等进行定义和说明

#include

#include

structgoods

{

charname[N];

charbrand[N];

intnumber;

};//*******************库存商品

structdate

{

intyear;

intmonth;

intday;

};//******************日期

structin_goods

{

charname[N];

charbrand[N];

intin_num;

floatin_money;

structdatein_day;//结构体的镶套定义

charin_peo_name[N];

};//*****************入库商品

structout_goods

{

charname[N];

charbrand[N];

intout_num;

floatout_money;

structdateout_day;

charout_peo_name[N];

};//*******************出库商品3.系统详细设计

#include

#include

#defineN10

#defineLEN20

structgoods

{

charname[N];

charbrand[N];

intnumber;

};//*******************库存商品

structdate

{

intyear;

intmonth;

intday;

};//******************日期

structin_goods

{

charname[N];

charbrand[N];

intin_num;

floatin_money;

structdatein_day;//结构体的镶套定义

charin_peo_name[N];

};//*****************入库商品

structout_goods

{

charname[N];

charbrand[N];

intout_num;

floatout_money;

structdateout_day;

charout_peo_name[N];//*******************出库商品

};

voidBuild();//创建库存文件

voidIn_control();//创建入库文件

voidOut_control();//创建出库文件

voidSelect_Message();//查询信息

voidStatistic_Message();//排序信息

voidSort_Name();//以电器名称排序

voidSort_Num();//以电器存量排序

voidSort_Message();//统计信息

voidStatistic_Name_Num();//以电器名称统计

voidStatistic_Brand_Num();//以品牌名称统计

voidStatistic_All_Money();//统计总价格

voidStatistic_Profit();//统计总收益

voidSelet_Name();//以电器名称查询

voidSelet_Brand();//以品牌名称查询

voidSelet_Out_Peo_Name();//以提货人查询

voidSelet_in_Peo_Name();//以送货人查询

//========================================================

voidmain()//******目录入口***********在主函数中建立主菜单

{

inti=0;

charch='y';

do

{

printf("\t============================================\n");

printf("\t========仓库物资管理系统========\n");

printf("\t========1、创建库存记录文件========\n");

printf("\t========2、物资入库管理========\n");

printf("\t========3、物资出库管理========\n");

printf("\t========4、查询物资信息========\n");

printf("\t========5、统计物资信息========\n");

printf("\t========6、排序物资信息========\n");

printf("\t========请选择功能(1-6)========\n");

printf("\t=============================================\n");scanf("%d",&i);

switch(i)

{

case1:

Build();break;

case2:

In_control();break;

case3:

Out_control();break;

case4:

Select_Message();break;

case5:

Statistic_Message();break;

case6:

Sort_Message();break;

}

printf("\t是否继续操作(Y/N)?

\n");

//getchar();

ch=getchar();

}while(ch=='Y'||ch=='y');//判断为真时执行循环体

}

//==================创建库存文件=====================

voidBuild()

{

FILE*fp;

intsize=0,i=0;

if((fp=fopen("库存记录.txt","w"))==NULL)

{

printf("不能打开此记录,请核实\n");

return;

}

printf("\t请输入本次输入的库存记录条数(单次输入最大为20条)\n");

scanf("%d",&size);

structgoodsg[LEN];

printf("\t请逐条输入电器的基本信息\n");

for(i=0;i

{

printf("\t电器名称品牌名称库存数量\n");

scanf("%s%s%d",&g[i].name,&g[i].brand,&g[i].number);

fwrite(&g[i],sizeof(structgoods),1,fp);

}

fclose(fp);

getchar();

}

//===================创建入库文件====================

voidIn_control()

{

FILE*fp1,*fp2;

intsize=0;

inti,j;

structgoodstemp={"\0","0",0};

chara[1]={'\0'};

if((fp1=fopen("入库记录.txt","a+"))==NULL)

{

printf("不能打开此记录,请核实\n");

return;

}

printf("\t请输入本次输入的入库记录条数(单次输入最大为20条)\n");

scanf("%d",&size);

structin_goodsig[LEN];

printf("\t请逐条输入电器的基本

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

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1