https://www.myziyuan.com/
- 123qwe
- 展开全部&(p->salesquantity),&(p->salestime).year),&((p->salestime).month),&((p->salestime).day)); p->nextproduct=q->nextproduct; q->nextproduct=p; q=p }} return ok;}//ProductInsertvoid ProQuantity_add(sqmountlink&L,char pkindname 1[],char pname 1[],int n){//添加顺序表挂接链表的某产品的总量,且需添加的产品总量为n int i,k; plinklist p; for(i=0;i { if(strcmp(L.kindelem[i]).pkindname,pkindname 1)!=0) continue; else break; } if(i { for(p=L.kindelem[i].firstproduct;p!=NULL;p=p->nextproduct) { k=strcnp(p->pname.pname); if(k==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(sqmountlink&L,char pkindname3[],char pname3[]) {//在顺序表挂接链表L中,查询属于某产品类的某产品的各项信息 int i,k; plinklist p; for(i=0;i { if(strcmp((L.kindelem[i]),pkindname.pkindname3)!=0) continue else break; } if(i { 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(sqmountlink&L) {//显示各产品所属产品类,产品名称、产品总量,进货日期,销出数量,销售时间 int i; plinklist p; printf("产品类 产品 进货日期 销出数量 销售时间\n") for(i=0;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(sqmountlink&L) {//销毁已存在的顺序表挂接链表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->nextproduct); free(q); } free(q); } } }//DestroyMountList void menu_operation() {//操作菜单 printf("----输入所要执行操作:-------\n") printf("----产品类的添加:1------\n"); printf("----产品的添加:2-----\n"); printf("----产品数量的添加:3-----\n"); printf("----查询每种产品所属产品类,产品总量,进货日期,销出数量,销售时间:4-----------\n") printf("----释放L所占内存空间,退出程序:0-----\n"); }//menu_operation /*--------------主程序-------------*/ void main(void) { int order, int i,n; char a[30]; char b[30]; sqmountlink L; InitMountList(L); printf("-----创建初始的产品类、产品顺序表挂接链表L-----\n"); CreatMuntList(L); DisplayList(L); printf("-----初始的产品类、产品顺序表挂接链表L创建完成-----\n"); menu_operation(); loop: printf("输入命令:"); scanf("%d",&order); switch(order) { case 1: printf("需添加产品类的个数:"); scanf("%d",&i); kindinsert(L,i); printf("输出修改后的产品库存管理表:\n"); DisplayList(L); goto loop; case 2: printf("需添加产品所属产品类的名称:") scanf("%s",&a); printf("需向此产品类添加产品的个数:"); scanf("%d",&i); ProductInsert(L,a,i); printf("输出修改后的产品库存管理表:\n"); DisplayList(L); goto loop; case 3: printf("输入需添加数量的产品所属产品类的名称:"); scanf("%s",&a); printf("输入需添加数量的产品的名称:"); scanf("%d",&n); ProQuantity_add(L,a,b,n); printf("输出修改后的产品库存管理表:\n"); DisplayList(L); goto loop ; case 4: printf("输入待查询产品所属产品类的名称:"); scanf("%s",&b); printf("输入待查询产品的名称:"); scanf(%s",&b); Visit(L goto loop; case (): DestroyMountList(L); exit(0); } }
- 2021-02-27 13:25:20
- 无敌
- 货号 单价前期结 前期金额入库数量 入库金额 销售数量 销售金额 退回数量 退回金额 返厂数量 返厂金额 调走数量 调走金额 结存数量 结存金额 (看哪个不适合自己加减)最后在插入公式,就OK了
- 2021-02-12 04:02:07
- wolf8668
- 如何用易语言做(进销存管理系统)里面的(库存查看)这个功能呢!库存查看的代码怎么写!是易语言的。,其实用什么代码来实现你要求功能并不是最重要,重要的是你要理解你要求的功能,库存查看,从会计角度来看,无非就是进仓数量减去出仓的数量,再扩大一点就是期初库存数量,再扩大一点就是某某仓库调到某某仓库。至于同一种规格的,就理解数据库的一些技术,比如关键字id,因为id是不可重复的,那不就可以实现同一种规格型号还剩下多少了。开发进销存,没有你想象的那么简单,是业务和技术双结合,但是业务为重,技术为辅,业务搞不清楚,技术再强没用的。反过来,业务非常清晰,技术弱一点反没什么关系,还可以开发一套高质量的进销存软件。我说的业务是指一个公司商贸的进、销、存的各个关系要非常清晰。
- 2021-02-12 04:02:07