C语言程序课程设计报告商品进销存管理程序Word格式文档下载.docx
- 文档编号:17618636
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:28
- 大小:206.80KB
C语言程序课程设计报告商品进销存管理程序Word格式文档下载.docx
《C语言程序课程设计报告商品进销存管理程序Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C语言程序课程设计报告商品进销存管理程序Word格式文档下载.docx(28页珍藏版)》请在冰豆网上搜索。
(3)数据输入的形式
按程序运行的提示操作※
(4)程序所能达到的功能及出错处理
该程序具有以下功能:
(5)给定商品编号或商品名,查看该商品及库存信息
二程序设计思路
根据要求首先设计一个结构体类型,设计好界面,设计好主函数。
程序各功能通过调用子函数来实现
用switch来实现菜单的选择一切数据信息通通存在文件中,并实现文件读写操作。
设计子函数来实现查询,保存,读取数据,删除等操作。
【总体设计】
图1系统功能模块图
【详细设计】
1.主函数
主函数设计要求简洁,只提供部分提示语和函数的调用
【程序】
具体设计如下:
结构体设计
structgoods
{intnumber;
charname[20];
主函数设计
voidmain()
{
voidjieman();
voidluru();
structgoods*shuju();
voidshanchu(structgoods*head);
voidjinghuo(structgoods*head);
voidxiaoshu(structgoods*head);
voidxiugai(structgoods*head);
voidchaxun(structgoods*head);
structgoods*head二NULL;
intk=0;
system("
cls"
);
jieman();
printf("
请选择你要的功能键:
”);
scanf("
%d"
&
k);
getchar();
while(k!
=0)
head=shuju();
switch(k)
{case1:
luru();
break;
case2:
xiugai(head);
case3:
chaxun(head);
case4:
xiaoshu(head);
case5:
jinghuo(head);
case6:
shanchu(head);
caseO:
exit(O);
default:
printf("
pleasetryagain!
\n"
}
界面设计
voidjieman()
printf(
printf("
☆☆☆★★★欢迎进入商品管理系统\n"
**1*录入信息少^***************★★★☆☆☆\n"
**2*
彳修改信息***************
★★★☆☆☆\n”);
**3*
询信息***************
**4*
卡肖隹彳主息***************
**5*
^进货信息***************
**6*
删除信息少^***************
**0*
■退出系统***************
文件保存函数设计
structgoods*baocun(structgoods*head)
structgoods*p=NULL;
FILE*fp=NULL;
charch='
\0'
;
printf(”是否保存到文件?
(y/n):
"
ch=getchar();
putchar(IO);
if(ch=='
y'
||ch二二'
Y'
)
fp=fopen("
goods.txt"
"
wb"
p=head;
if((fp==NULL)&
&
(p二二NULL))
printf(”读取数据失败rj;
exit(0);
while(p!
二NULL)
{fprintf(fp,"
%d\n%s\n%d\n%f\t"
p->
number,p->
name,p->
shumu,p->
jiage);
p=p->
next;
保存成功!
fclose(fp);
return(head);
elseif(ch=='
n'
||ch=='
N'
信息未保存到文件!
head二shuju();
return(head);
else
sorry,pleasetryagain(y/n):
putchar(10);
return(head);
数据读取函数设计
structgoods*shuju()
intn=0;
FILE*fp;
structgoods*head二NULL,*p1,*p2;
fp二fopen("
rb"
if(fp==NULL)
\nsorry,读取数据失败!
else{
p1=p2=(structgoods*)malloc(LEN);
fscanf(fp,"
%d%s%d%f"
p1->
number,p1->
name,&
shumu,&
jiage);
while(!
feof(fp))
n++;
if(n二=1)head二p1;
elsep2->
next=p1;
p2=p1;
p1=(structgoods*)malloc(LEN);
p2->
next二NULL;
return(head);
录入函数设计
voidluru()
{structgoods*shuju();
structgoods*baocun(structgoods*head);
structgoods*p1,*p2,*p3;
p1二head;
p2=(structgoods*)malloc(LEN);
请输入四位编号:
number);
请输入商品名:
);
seanf("
%s"
p2->
name);
请输入商品数量:
shumu);
请输入商品价格:
%f"
if(p1二二NULL)
{p仁p2;
baocun(p2);
return;
while(p1!
=NULL)
{p3=p1;
p1=p1->
next;
p3->
next=p2;
baocun(head);
进货函数设计voidjinghuo(structgoods*head)
{structgoods*baocun(structgoods*head);
intc;
intp;
structgoods*p1,*p2;
printf(”请输入四位编号:
p);
=p1->
number&
next!
p2=p1;
p1=p1->
if(p==p1->
number)
\n商品编号\t商品名\t数量\t价格\n"
%d\t\t%s\t\t%d\t\t%f\n"
p1->
name,p1->
shumu,p1->
printf(”请输入该商品经货个数:
”);
c);
shumu二p1->
shumu+c;
该商品经货个数:
%d\n"
删除函数设计
voidshanchu(structgoods*head)
{structgoods*p1,*p2;
intp;
pl二head;
二p1->
{p2=p1;
价格
{printf("
\n商品编号\t商品名\t数量\t
%d\t\t%s\t\t%d\t\t%.2f\n"
name,p1-
>
shumu,p1->
if(p1==head)head二p1->
next=p1->
next;
n=n-1;
删除成功!
查询函数设计
voidchaxun(structgoods*head)
inta,c,i=0;
chart[20];
printf(”1*商品编号查询\n"
printf(”2*商品名字查询\n"
printf(”请选择你需要的功能键\n"
a);
if(a==1)
&
while(c!
=0&
i==0)
价格:
if(c==p1->
\n商品编号\t名字\t数目\t
%d\t%s\t%d\t%.2f\n"
p1->
nam
e,p1->
i=1;
enter
else{printf(”系统中无该商品记录!
press
return!
if(a==2&
请输入商品名字:
,&
t);
while(strcmp(t,"
O"
)!
=O&
if(strcmp(t,p1->
name)!
if(strcmp(t,p1->
name)==0)
\n商品编号\t名字\t数目\t价格:
%d\t%s\t%d\t%f\n"
number,p1->
name,p1->
else{printf(”系统中无该商品记录!
修改函数设计
voidxiugai(structgoods*head)
intp,i=0;
if(p!
printf("
name
请输入要修改的新商品编号"
if(i==1)
修改后新商品编号名字数目价格:
%d%s%d%f"
修改成功!
销售函数设计
voidxiaoshu(structgoods*head)
number&
请输入该商品售货个数:
shumu=p1->
shumu-c;
该商品经货个数:
%d\n"
}baocun(head);
三程序清单
#include<
stdio.h>
#includevstring.h>
stdlib.h>
#include<
malloc.h>
#defineLENsizeof(structgoods)
structgoods结构体
{intnumber;
商品编号
charname[20];
商品名
商品数目
商品价格
全局变量
voidmain()主函数
界面函数声明
录入函数声明
删除函数声明
进货函数声明
数据读取函数声明
voidjinghuo(structgoods*head);
voidxiugai(structgoods*head);
voidchaxun(structgoods*head);
销售函数声明
修改函数声明
查询函数声明
case0:
}structgoods*baoeun(structgoods*head){
保存函数
判断是否保存
Y'
ch二getchar();
putchar(1O);
voidchaxun(structgoods*head)查询函数
1*商品编号查询\n"
2*商品名字查询\n"
if(a==1){
请输入四位编号:
二NULL)查找商品
else{printf("
系统中无该商品记录!
pressreturn!
\n
商品编号\t名字\t数目\t价格:
%d\t
%s\t%d\t%f\n"
p1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 程序 课程设计 报告 商品 进销存 管理程序