材料采购保管收费管理系统.docx

上传人:b****2 文档编号:1917974 上传时间:2023-05-02 格式:DOCX 页数:10 大小:124.48KB
下载 相关 举报
材料采购保管收费管理系统.docx_第1页
第1页 / 共10页
材料采购保管收费管理系统.docx_第2页
第2页 / 共10页
材料采购保管收费管理系统.docx_第3页
第3页 / 共10页
材料采购保管收费管理系统.docx_第4页
第4页 / 共10页
材料采购保管收费管理系统.docx_第5页
第5页 / 共10页
材料采购保管收费管理系统.docx_第6页
第6页 / 共10页
材料采购保管收费管理系统.docx_第7页
第7页 / 共10页
材料采购保管收费管理系统.docx_第8页
第8页 / 共10页
材料采购保管收费管理系统.docx_第9页
第9页 / 共10页
材料采购保管收费管理系统.docx_第10页
第10页 / 共10页
亲,该文档总共10页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

材料采购保管收费管理系统.docx

《材料采购保管收费管理系统.docx》由会员分享,可在线阅读,更多相关《材料采购保管收费管理系统.docx(10页珍藏版)》请在冰点文库上搜索。

材料采购保管收费管理系统.docx

材料采购保管收费管理系统

材料采购保管收费管理系统

C语言课程设计报告

目录

1.程序设计题目

2.设计目的与要求

3.总体设计

3.1需求分析

3.2包含模块功能

4.详细设计

4.1主函数流程图

4.2query函数流程图

5.数据结构设计

6.调试分析

7.总结

8.参考文献

9.答辩记录

10.教师意见

正文

1.程序设计题目

材料采购保管收费管理系统(B级)

功能要求:

a)输入功能:

输入采购的10种材料货号、名称、材料供应价格、运杂费、运输损耗费、采购及保管费率。

b)计算功能:

计算每个材料的保管费用,材料采购保管费用=(材料供应价格+运杂费+运输损耗费)*采购及保管费率

c)查询功能:

按条件(货号、名称)显示材料的采购及保管费率。

2.设计目的与要求

设计一个程序,管理所输入的材料信息,并计算材料的保管费用以及按照货号或者名称查询材料的某个信息。

通过对任务的自行理解,并结合已掌握的或者是待掌握的C语言知识,来检验自己上学期C语言课程的学习情况。

在加深课本知识的掌握同时,也可以积累程序设计的经验,今后在学习工作中遇到困难,容易想起用编程等方式快速解决。

可以学会将课本上的理论知识和实际有机的结合起来,锻炼实际分析问题和解决问题的能力。

3.总体设计

3.1需求分析

在信息较多的情况下,人们总希望能有一个系统性的数据库来存储信息,并在其中完成查询工作,或是用筛选出来的数据进行计算或是对比。

尤其像任务需求的那样,在材料种类繁多的情况下,一个一个计算保管费用是不太现实的,容易出现输入输出上的错误。

这个时候就需要一个系统来完成存储信息,并且能为人们所调用来完成计算和查询的功能。

3.2包含模块功能

该系统需要做到以下几点:

①材料货号、名称、各项费用、费率的录入与保存;②调用其中的费用数据,计算所输入的各个材料的保管费用。

③询问是否使用查询功能,若使用,则按照货号或者名称输出材料信息。

该系统主要包含两个函数:

①main函数:

负责输入输出以及计算;②query函数:

负责询问是否查询以及按条件查询功能。

4.详细设计

4.1主函数流程图

 

 

4.2query函数流程图

 

 

 

 

5.数据结构设计

源程序:

#include

#include

#include

#include

#defineN10

structMat//声明无名结构体类型

{intnum;//材料货号

charname[10];//材料名称

floatprice1;//材料供应价格

floatprice2;//材料运杂费

floatprice3;//材料运输损耗费

floatprice;//材料保管费用

floatrate;//材料采购及保管费率

}mat[N];

voidquery(Matmat[])//声明查询函数

{

intn=0,choice=0,a=0,flag=1,i;

printf("请输入要查询的方式:

1.货号,2.名称\n");//声明查询方式

scanf("%d",&choice);

switch(choice)

{

case1:

//使用货号进行查询,如货号匹配则输出该材料的保管费率

printf("请输入要查询的货号\n");

scanf("%d",&n);

for(i=0;i

{

if(n==mat[i].num)

{

printf("所查找的材料的采购及保管费率为:

%6.2f\n",mat[i].rate);

a=1;

break;

}

}

if(a==1)

break;

else

{

printf("未查询到相关货号\n");

break;

}

case2:

//使用材料名称进行查询,如名称匹配则输出该材料的保管费率

charnamep[10];

printf("请输入要查询的名称\n");

scanf("%s",namep);

for(i=0;i

{

flag=strcmp(namep,mat[i].name);

if(flag==0)

{

printf("所查找的材料的采购及保管费率为:

%6.2f\n",mat[i].rate);break;

}

}

if(flag==0)

break;

else

{printf("未查询到相关货号\n");break;}

}

}

intmain()

{

inti,choice=0;//输入材料信息

for(i=0;i

{

printf("请输入采购的材料各项信息,用空格间隔:

\n");

printf("货号名称供应价格运杂费运输损耗费保管费率\n");

scanf("%d%s%f%f%f%f",&mat[i].num,&mat[i].name,&mat[i].price1,&mat[i].price2,&mat[i].price3,&mat[i].rate);

printf("\n");

mat[i].price=(mat[i].price1+mat[i].price2+mat[i].price3)*mat[i].rate;//计算材料的保管费用

}

printf("货号保管费用\n");

for(i=0;i

{

printf("%-6d%6.2f",mat[i].num,mat[i].price);

printf("\n");

}

printf("\n");

do

{

printf("是否要进行查询?

1.是,使用查询功能or缺省.否,程序将直接退出\n");

scanf("%d",&choice);

switch(choice)

{

case1:

query(mat);break;//如使用查询,调用查询函数

default:

exit(0);

}

}while(choice!

=1);

exit(0);

return0;

}

6.调试分析

输入及运算功能调试:

 

查询功能调试(按货号):

 

查询功能调试(按名称):

 

7.总结

通过编写这个程序,我能对上学期学习的C语言知识有了一定的巩固与更深地了解。

虽然在最初编写时,有许多想法不完善或是语法错误,但后来都在仔细阅读课本、参考书目,或是询问老师的过程中被一一查找出来并进行了完善。

这种出现问题,自行找办法解决,或是找同学老师解答难题的学习方式让我十分有成就感,写程序就变成了一件轻松的事情。

经过这次课程设计我也明白,C语言并不是像我们当初学习的时候那样分类,它是一个系统的学习体系,看似不相关的知识点其实都是串在一起的。

有了生活中的实际问题,更能让我们发现程序的便捷。

在这一周的编写调试过程中,我发现题目虽然看上去简单,但也有一些需要注意的细节。

只有耐心对待,一遍又一遍地调试,才能发现自己的错误在哪里,才能在这次学习过程中有很大收获。

最后要感谢课程设计过程给我辅导的老师,感谢为我点出了问题的关键,并帮助我跨过了一些一直阻碍着的障碍。

在今后的生活中,我会灵活应用程序,让它们帮助我的生活更加便捷。

8.参考文献

1.《C语言课程设计实例精选与编程指导》东南大学出版社

2.《C语言程序设计学习指导、实验指导与课程设计》中国水利水电出版社2006年盛夕清,赵阳等

3.《C语言课程设计案例精编》中国水利水电出版社2005年郭翠英等

 

9.答辩记录

 

10.教师意见

 

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

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

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

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