当前位置:首页 > 代码 > 正文

进销存系统源代码(进销存管理系统源码)

admin 发布:2022-12-19 22:18 123


今天给各位分享进销存系统源代码的知识,其中也会对进销存管理系统源码进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

c语言粮油进销存系统源代码

#includestdio.h

#includestdlib.h

#includestring.h

#includeconio.h

//日期结构体

typedef struct

{

int year;

int month;

int day;

}DATE;

//商品结构体

//定义链表

typedef struct Node

{

long num;

char name[20];

char kind[20];

DATE pro_date;

int save_day;

int shuliang;

float jinjia;

float shoujia;

DATE sale_date;

struct Node *next;

}Node,*LinkList;

//申请函数

void apply()

{

int i,flag=1;

FILE *fp;

char name[20],key[20];

flushall();

printf("用户名(不能为空):");

scanf("%s",name);

flushall();

printf("密码(不能为空):");

for(i=0;i=20;i++)

{

key[i]=getch();

if(key[i]==13)

{

key[i]='\0';

break;

}

printf("*");

}

fp=fopen("key.txt","w");

if(fp==NULL)

{

printf("the file can not open!");

flag=0;

exit(1);

}

fprintf(fp,"%s %s",name,key);

fclose(fp);

if(flag==1)

printf("\n申请成功,请登录!\n");

else

printf("\n申请失败,请重新申请!\n");

}

//登录函数

int load()

{

FILE *fp;

int i;

char name[20],key[20];

char name1[20],key1[20];

fp=fopen("key.txt","r");

fscanf(fp,"%s %s",name,key);

fclose(fp);

printf("用户名(不能为空):");

scanf("%s",name1);

flushall();

printf("密码(不能为空):");

for(i=0;i=20;i++)

{

key1[i]=getch();

if(key1[i]==13)

{

key1[i]='\0';

break;

}

printf("*");

}

printf("\n");

if(strcmp(name1,name)==0strcmp(key1,key)==0)

{ printf("登陆成功!\n\n");return 1; }

else

{ printf("用户名或密码错误;请重新登录!"); return 0;}

}

//密码保护系统

void key()

{

int choice,c;

do

{ printf("\n****************************申请登录系统********************************\n\n");

printf(" 1: 新用户注册; \n\n");

printf(" 2: 新用户登录; \n\n");

printf("请选择:");

scanf("%d",choice);

switch(choice)

{

case 1: apply(); break;

case 2: c=load();break;

}

}while(c!=1);

}

LinkList goods_input()

{

LinkList L;

Node *p1,*p2;

int i=1;

void file_write(Node *p);

int flag=1;

L=p2=(Node*)malloc(sizeof(Node));//为头节点分配存储空间

while(flag)

{

p1=(Node*)malloc(sizeof(Node));

printf("请输入第%d种商品的信息(商品号为0时,结束商品输入):\n\n",i++);

flushall();

printf("商品号:");

scanf("%ld",p1-num);

if(p1-num!=0)

{

flushall();

printf("名称:");

scanf("%s",p1-name);

flushall();

printf("类别:");

scanf("%s",p1-kind);

flushall();

printf("生产日期(年月日用空格隔开):");

scanf("%d%d%d",p1-pro_date.year,p1-pro_date.month,p1-pro_date.day);

flushall();

printf("保质期:");

scanf("%d",p1-save_day);

flushall();

printf("商品数量:");

scanf("%d",p1-shuliang);

flushall();

printf("进价:");

scanf("%f",p1-jinjia);

flushall();

printf("售价:");

scanf("%f",p1-shoujia);

flushall();

printf("销售日期(年月日用空格隔开):");

scanf("%d%d%d",p1-sale_date.year,p1-sale_date.month,p1-sale_date.day);

p2-next=p1;

p2=p1;

}

else

{

flag=0;

break;

}

}

p2-next=NULL;

file_write(L);

free(p1);

return(L);

}

//将商品信息写入文件

void file_write(Node *p)

{

FILE *fp;

char filename[50];int c;

printf("是否保存?(保存按1;不保存按0):");

scanf("%d",c);

if(c==1)

{ flushall();

printf("\n为了将你操作的信息保存下来,请输入要写入的文件的路经或文件:");

gets(filename);

fp=fopen(filename,"w");

if(fp==NULL)

{

printf("\n this file can not be open!");

exit(1);

}

p=p-next;

while(p!=NULL)

{

fprintf(fp,"%ld %s %s %d %d %d %d %d %f %f %d %d %d\n",p-num,p-name,p-kind,p-pro_date.year,p-pro_date.month,p-pro_date.day,p-save_day,p-shuliang,p-jinjia,p-shoujia,p-sale_date.year,p-sale_date.month,p-sale_date.day);

p=p-next;

}

fclose(fp);

printf("文件保存成功!");

}

}

//将文件中的信息读出的函数

LinkList file_read()

{

FILE *fp;

LinkList L;

Node *p1,*p2;

char filename[50];

int i,k=0,t=-2;

flushall();

printf("请输入要读取的文件的路径或文件名:");

gets(filename);

flushall();

printf("请输入商品的种类数:");

scanf("%d",i);

fp=fopen(filename,"r");

L=p2=(Node*)malloc(sizeof(Node));//为头节点分配存储空间

while(t!=EOFki)

{

p1=(Node*)malloc(sizeof(Node));

t=fscanf(fp,"%ld %s %s %d %d %d %d %d %f %f %d %d %d",p1-num,p1-name,p1-kind,p1-pro_date.year,p1-pro_date.month,p1-pro_date.day,p1-save_day,p1-shuliang,p1-jinjia,p1-shoujia,p1-sale_date.year,p1-sale_date.month,p1-sale_date.day);

p2-next=p1;

p2=p1;

k++;

}

p2-next=NULL;

fclose(fp);

return L;

}

//查找商品信息

void goods_find()

{

long snum;

int flag=0,t;

Node *p0,*p1;

p1=p0=file_read();

while(1)

{

flag=0;

printf("请输入你要查找的商品信息的商品号:");

scanf("%ld",snum);

while( p0-next!=NULL)

{

p0=p0-next;

if(p0-num==snum)

{

flag=1;

break;

}

}

if(flag==1)

{ printf("该商品的信息如下:\n\n");

printf("商品号\t名称\t类别\t生产日期\t保质期\t数量\t进价\t售价\t销售日期\n");

printf("%ld\t%s\t%s\t%02d-%02d-%02d\t%d\t%d\t%0.2f\t%0.2f\t%02d-%02d-%02d",p0-num,p0-name,p0-kind,p0-pro_date.year,p0-pro_date.month,p0-pro_date.day,p0-save_day,p0-shuliang,p0-jinjia,p0-shoujia,p0-sale_date.year,p0-sale_date.month,p0-sale_date.day);

}

else

printf("此商品号不存在,查找失败!\n");

p0=p1;

printf("结束查找按0,继续查找按1:");

scanf("%d",t);

if(t==0)

break;

}

}

//修改商品信息

void goods_change()

{

Node *p1,*p0,*p2;

int c,flag=0,t;

long snum;

p2=p0=file_read();

while(1)

{

flag=0;

p1=p0-next;

if(p1==NULL) flag=0;

printf("请输入你要修改的商品信息的商品号:");

scanf("%ld",snum);

while(p1!=NULL)

{

if(p1-num==snum)

{

flag=1;

break;

}

p1=p1-next;

}

if(flag==1)

{ printf(" 1:商品号;\n");

printf(" 2:商品名称;\n");

printf(" 3:商品类别;\n");

printf(" 4:商品生产日期;\n");

printf(" 5:商品保质期;\n");

printf(" 6:商品数量\n");

printf(" 7:商品进价\n");

printf(" 8:商品售价\n");

printf(" 9:商品销售日期\n");

printf(" 请选择修改的内容(0~9):");

scanf("%d",c);

while(1)

{

if(c==1||c==2||c==3||c==4||c==5||c==6||c==7||c==8||c==9)break;

else

{

printf("\n输入有误,请重新输入!\n清选择(0~9):");

scanf("%d",c);

if(c==1||c==2||c==3||c==4||c==5||c==6||c==7||c==8||c==9) break;

}

}

switch(c)

{

case 1:

{

printf("\n输入修改后的商品号:");

scanf("%ld",p1-num);break;

}

case 2:

{

printf("输入修改后的商品名:");

scanf("%s",p1-name);break;

}

case 3:

{

printf("输入修改后的商品类别:");

scanf("%s",p1-kind);break;

}

case 4:

{

printf("输入修改后的商品生产日期(年月日之间用空格隔开):");

scanf("%d%d%d",p1-pro_date.year,p1-pro_date.month,p1-pro_date.day);break;

}

case 5:

{

printf("输入修改后的商品保质期:");

scanf("%d",p1-save_day);break;

}

case 6:

{

printf("输入修改后的商品数量:");

scanf("%d",p1-shuliang);break;

}

case 7:

{

printf("输入修改后的商品进价:");

scanf("%f",p1-jinjia);break;

}

case 8:

{

printf("输入修改后的商品售价:");

scanf("%f",p1-shoujia);break;

}

case 9:

{

printf("输入修改后的商品销售日期(年月日之间用空格隔开):");

scanf("%d%d%d",p1-sale_date.year,p1-sale_date.month,p1-sale_date.day);break;

}

}

printf("修改后的商品信息如下:\n\n");

printf("商品号\t名称\t类别\t生产日期\t保质期\t数量\t进价\t售价\t销售日期\n");

printf("%ld\t%s\t%s\t%02d-%02d-%02d\t%d\t%d\t%0.2f\t%0.2f\t%02d-%02d-%02d",p1-num,p1-name,p1-kind,p1-pro_date.year,p1-pro_date.month,p1-pro_date.day,p1-save_day,p1-shuliang,p1-jinjia,p1-shoujia,p1-sale_date.year,p1-sale_date.month,p1-sale_date.day);

}

else

printf("此商品号不存在,修改失败!\n");

p0=p2;

printf("结束修改按0,继续修改按1:");

scanf("%d",t);

if(t==0)

break;

}

file_write(p0);

}

//插入商品

void goods_insert()

{

Node *p0,*p1,*p2,*p3;

int k,i,flag,t;

p0=file_read();

while(1)

{

p3=p2=p0;

k=0;

printf("请输入插入位置i的值(i的值小于商品的种类数):");

scanf("%d",i);

while(p2!=NULLki-1)

{

p2=p2-next;

k=k+1;

}

if(k!=i-1) flag=0;

p1=(Node*)malloc(sizeof(Node));

printf("请输入要插入的商品号 名称 类别 生产日期 保质期 数量 进价 售价 销售日期:\n");

scanf("%ld%s%s%d%d%d%d%d%f%f%d%d%d",p1-num,p1-name,p1-kind,p1-pro_date.year,p1-pro_date.month,p1-pro_date.day,p1-save_day,p1-shuliang,p1-jinjia,p1-shoujia,p1-sale_date.year,p1-sale_date.month,p1-sale_date.day);

p1-next=p2-next;

p2-next=p1;

flag=1;

if(flag==1)

printf("插入位置合理!\n");

else

printf("插入位置不合理!\n");

printf("结束插入按0,继续插入按1:");

scanf("%d",t);

if(t==0)

break;

}

p0=p0-next;

printf("商品号\t名称\t类别\t生产日期\t保质期\t数量\t进价\t售价\t销售日期\n");

while(p0!=NULL)

{

printf("--------------------------------------------------------------------------------\n");

printf("%ld\t%s\t%s\t%02d-%02d-%02d\t%d\t%d\t%0.2f\t%0.2f\t%02d-%02d-%02d",p0-num,p0-name,p0-kind,p0-pro_date.year,p0-pro_date.month,p0-pro_date.day,p0-save_day,p0-shuliang,p0-jinjia,p0-shoujia,p0-sale_date.year,p0-sale_date.month,p0-sale_date.day);

p0=p0-next;

}

file_write(p3);

}

//删除商品信息

void goods_delete()

{

long num;

Node *p,*p0,*p1,*p2;

int flag=0,t;

p0=file_read();

while(1)

{

flag=0;

p1=p2=p0;

p=p1-next;

if(p==NULL) flag=0;

printf("请输入你要删除的商品的商品号:");

scanf("%ld",num);

while(p!=NULL)

{

if(p-num==num)

{

p1-next=p-next;

free(p);

flag=1;

break;

}

p1=p;

p=p-next;

flag=0;

}

if(flag==1)

printf("你已正确删除!\n");

else

printf("你输入的商品号不存在!\n");

printf("结束删除按0,继续删除按1:");

scanf("%d",t);

if(t==0)

break;

}

p0=p0-next;

printf("商品号\t名称\t类别\t生产日期\t保质期\t数量\t进价\t售价\t销售日期\n");

while(p0!=NULL)

{

printf("--------------------------------------------------------------------------------\n");

printf("%ld\t%s\t%s\t%02d-%02d-%02d\t%d\t%d\t%0.2f\t%0.2f\t%02d-%02d-%02d",p0-num,p0-name,p0-kind,p0-pro_date.year,p0-pro_date.month,p0-pro_date.day,p0-save_day,p0-shuliang,p0-jinjia,p0-shoujia,p0-sale_date.year,p0-sale_date.month,p0-sale_date.day);

p0=p0-next;

}

file_write(p2);

}

//商品信息排序

void goods_rank()

{

Node *p,*q,*k,*L,t;

Node *p0;

int flag=0;

L=file_read();

p=L-next;

while(p-next)

{

k=p;

q=p-next;

while(q)

{

if((k-shuliang)(q-shuliang))

k=q;

q=q-next;

}

if(p!=k)

{

t=*p;

*p=*k;

*k=t;

t.next=p-next;

p-next=k-next;

k-next=t.next;

flag=1;

}

p=p-next;

}

if(flag=1)

printf("按商品数量从小到大排序成功!\n");

else

printf("按商品数量从小到大排序失败!\n");

p0=L;

p0=p0-next;

printf("商品号\t名称\t类别\t生产日期\t保质期\t数量\t进价\t售价\t销售日期\n");

while(p0!=NULL)

{

printf("--------------------------------------------------------------------------------\n");

printf("%ld\t%s\t%s\t%02d-%02d-%02d\t%d\t%d\t%0.2f\t%0.2f\t%02d-%02d-%02d",p0-num,p0-name,p0-kind,p0-pro_date.year,p0-pro_date.month,p0-pro_date.day,p0-save_day,p0-shuliang,p0-jinjia,p0-shoujia,p0-sale_date.year,p0-sale_date.month,p0-sale_date.day);

p0=p0-next;

}

file_write(L);

}

//商品信息统计

void goods_tongji()

{

Node *p0,*p1;

int liang_sum=0;

float lirun_sum=0;

p0=p1=file_read();

p0=p0-next;

printf(" 商品信息统计表 \n\n");

printf("商品号\t名称\t类别\t生产日期\t保质期\t数量\t进价\t售价\t销售日期\n");

while(p0!=NULL)

{

printf("--------------------------------------------------------------------------------\n");

printf("%ld\t%s\t%s\t%02d-%02d-%02d\t%d\t%d\t%0.2f\t%0.2f\t%02d-%02d-%02d",p0-num,p0-name,p0-kind,p0-pro_date.year,p0-pro_date.month,p0-pro_date.day,p0-save_day,p0-shuliang,p0-jinjia,p0-shoujia,p0-sale_date.year,p0-sale_date.month,p0-sale_date.day);

p0=p0-next;

}

printf("\n");

p1=p1-next;

while(p1!=NULL)

{

liang_sum+=p1-shuliang;

// printf("商品数量:%d\n",p1-shuliang);

lirun_sum+=((p1-shoujia)-(p1-jinjia))*(p1-shuliang);

p1=p1-next;

}

printf("迄今,商店里还有%d件商品;\n总利润为%0.2f元;\n",liang_sum,lirun_sum);

if(liang_sum=200)

printf("注意:商店里的商品偏少,请适当进货!\n");

else if(liang_sum1100)

printf("注意:商店里积压的货物太多,请及时清仓!\n");

else

printf("\n商品总件数大于200件,小于1100件,无需进货,清仓!\n");

}

main()

{

int c;

key();

do

{

printf("请按任意键返回主菜单!");

getch();

system("cls");

printf("\n****************************欢迎进入商场店面管理系统****************************\n\n");

printf(" 1,录入商品信息;\n");

printf(" 2,查找商品信息;\n");

printf(" 3,修改商品信息;\n");

printf(" 4,插入商品信息;\n");

printf(" 5,删除商品信息;\n");

printf(" 6,商品信息排序;\n");

printf(" 7,统计商品信息;\n");

printf(" 0,退出系统;\n");

printf(" 请选择(0~7):");

scanf("%d",c);

while(1)

{

if(c==1||c==2||c==3||c==4||c==5||c==6||c==7||c==0)break;

else

{

printf("\n输入有误,请重新输入!\n清选择(0~7):");

scanf("%d",c);

if(c==1||c==2||c==3||c==4||c==5||c==6||c==7||c==0) break;

}

}

switch(c)

{

case 1:goods_input();break;

case 2:goods_find();break;

case 3:goods_change();break;

case 4:goods_insert();break;

case 5:goods_delete();break;

case 6:goods_rank();break;

case 7:goods_tongji();break;

case 0 :break;

}

}while(c!=0);

}

数据结构:产品进销存管理系统的源代码

p-totalquantity=p-totalquantity+n;

printf("查看添加后产品的各项输出:%s %d%d,%d %d %d,%d,%d\n",p-pname,p-totalquantity,(p-goodsdate).year,(p-goodsdate).month,(p-goods).day,

p-salequanlity,(p-salestime).year,(p-salestime).month,(p-salestime).day);

}

}

}

}//ProQuantity_add

void Visit(sqmountlinkL,char pkindname3[],char pname3[])

{//在顺序表挂接链表L中,查询属于某产品类的某产品的各项信息

int i,k;

plinklist p;

for(i=0;iL.length;i++)

{

if(strcmp((L.kindelem[i]),pkindname.pkindname3)!=0)

continue

else

break;

}

if(iL.length)

{

for(p=L.kindelem[i].firstprodicy;p!=NULL;p=p-nextproducy)

{

k=strcmp(p-pname.pname3);

if(k==0)

break;

}

if(k!=0)

printf("此产品不存在:\n")

else

{

printf("输出带查询产品的各项信息:\n");

printf("%s %s %d %d,%d,%d %d %d,%d,%d\n",(L.kindelem[i]).pkindname,p-pname,p-totalquantity,(p-goodsdate).year,(p-goodsdate).month,(p-goodsdate).day,

p-salequantity,(p-salestime).year,(p-salestime).month,(p-salestime).day);

}

}

}//Visit

void DisplayList(sqmountlinkL)

{//显示各产品所属产品类,产品名称、产品总量,进货日期,销出数量,销售时间

int i;

plinklist p;

printf("产品类 产品 进货日期 销出数量 销售时间\n")

for(i=0;iL.length;i++)

{

if(!(L.kindelem[i],firstproduct))

printf("%s\n",(L.kindelem[i]).pkindname);

for(p=L.kindelem[i].firstproduct;p;p=p-nextproduct)

printf("%s %s %d %d,%d,%d %d %d,%d,%d \n",(L.kindelem[i]).pkindname,p-pname,p-totalquantity,(p-goodsdate).year,(P-goodsdate).month,(p-goodsdate).day,p-salesquantity,(p-salestime).year,(p-salestime).month,(p-salestime).day);

}

}//DisplayList

void DestoryMountList(sqmountlinkL)

{//销毁已存在的顺序表挂接链表L

int i;

kindlnode *p;

for(i=L.length;i=0;

{

p=(L.kindelem[i]);

if(*p).firstproduct==NULL)

free(p);

else

{

while((*p).firstproduct;q-nextproduct;q=q-nextp

「源码分享」ASP.NET仓库进销存ERP管理系统+小程序源码

开发环境为Visual Studio 2012,数据库为SQL SERVER2012R2,使用.net 4.5开发。

一、源码介绍

所有行业的ERP系统/进销存/仓库系统,该系统为vs2012 .net+MsSQL版,目前标准版功能简单、明了、满足公司正常使用,已有多家企业正常使用,成熟稳定,有需要的可以下载看看。

二、主要功能

1、电商管理(可以和公众号、小程序对接) 微信订单、小程序订单、公众号订单

参数设置:轮播图片设置、分类导航设置、小程序参数设置、公众号参数设置

2、销售管理:销售订单、销售出库

3、采购管理:采购订单、采购入库

4、生产管理:BOM分组、BOM清单、生产计划、生产领料、生产入库

5、仓库管理:其他入库、其他出库、商品组装、商品拆卸、库存盘点、库存调拨

6、财务管理:销售收款、其他收款、采购付款、其他付款、收款核销、付款核销

7、采购报表

采购订单跟踪表 采购明细表 采购汇总表(按商品) 采购汇总表(按供应商)

8、销售报表

销售订单跟踪表 销售明细表 销售汇总表(按商品) 销售汇总表(按客户)

9、生产报表

生产计划跟踪表 生产领料明细表 生产领料汇总表 生产入库明细表 生产入库汇总表

10、仓存报表

商品库存余额表 商品收发明细表 商品收发汇总表

11、资金报表

现金银行报表 应付账款明细表 应收账款明细表

客户对账单 供应商对账单 其他收支明细

12、基础资料

供应商管理 商品管理 仓库管理 账户管理 员工管理 企业号通讯录

工序管理 辅助资料 客户类别 供应商类别 商品类别 商品品牌

收支类别 计量单位 结算方式 工序类别 高级设置 操作日志

参数设置 打印设置 Logo印章

3、默认数据库连接字符串在web.config配置文件中修改

获取源码方式:点赞+转发+关注+私信【进销存ERP】

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

欢迎点赞+转发+关注!大家的支持是我分享最大的动力!!!

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

进销存系统源代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于进销存管理系统源码、进销存系统源代码的信息别忘了在本站进行查找喔。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/27215.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载