1、 -
商店销售管理系统
#include
2、],sc[N]; //定义全局变量 int flag=1; FILE *fp; int i=0; int k=0; int b=0; chakan()//显示目前的库存 { int zong=0; fp=fopen("chaoshi.txt","r"); for(i=1;i<=(k+b);i++) fread(&sp[i],sizeof(struct goods),1,fp); fclose(fp); for(i=1;i<=k;i++) { zong=zong+sp[i].num; } if(zong!=
3、0) { printf(" 目前库存情况为:名称数量价格编号\n"); for(i=1;i<=(k+b);i++) { printf(" %s %d %f %d\n",sp[i].name,sp[i].amount,sp[i].price,sp[i].num); } } else printf("\n #####目前库存为#####
4、\n"); } jinhuo()//进货模块 { do { k++; i++; printf(" 请输入商品的名称.数量.价格.标号(>0)例如:a 1 2.5 111\n\t\t\t"); scanf("%s %d %f %d%c",sp[i].name,&sp[i].amount,&sp[i].price,&sp[i].num); printf(" 是否继续,是(1),否(0)\n\t\t\t"); scanf("%d",&flag)
5、 }while(flag!=0); fp=fopen("chaoshi.txt","w"); for(i=1;i<=k;i++) fwrite(&sp[i],sizeof(struct goods),1,fp); fclose(fp); chakan(); } xiaoshou()//销售模块 { float m[100]; int z=1; int j[100]; int a[100]; int g=0; int y=0; int h=0; float zong=0; fp=fopen("chaos
6、hi.txt","r"); for(i=1;i<=k;i++) fread(&sp[i],sizeof(struct goods),1,fp); fclose(fp); do { g++; y++; loop: printf(" 请输入商品编号和数量,例如:(100 20)\n\t\t\t"); scanf("%d %d",&j[y],&a[y]); for(z=1;z<=k;z++) { if(j[y]==sp[z].num) { h++; sp[z].amou
7、nt=sp[z].amount-a[y]; m[y]=(float)a[y]*sp[z].price; sc[y]=sp[z]; } } if(h==0) { printf(" 输入有误,请重新输入\n\t\t\t"); goto loop; } fp=fopen("chaoshi.txt","wt"); for(i=1;i<=k;i++) fwrite(&sp[i],sizeof(struct goods),1,fp); fclose(fp); pr
8、intf(" 是否继续,是(1),否(0)\n\t\t\t"); scanf("%d",&flag); }while(flag!=0); printf("\n ############################################\n"); printf(" 编号名称单价数量总计\n"); for(y=1;y<=g;y++) { printf(" %4d%10s%8.2f%6
9、d%13.2f\n",sc[y].num,sc[y].name,sc[y].price,a[y],m[y]); zong=zong+m[y]; } printf(" 您此次一共消费%f 元,欢送您下次光临\n",zong); shijian(); } zengjia()//增加商品数量模块 { float m; int z=1; int j[100],a[100]; int g=0; int y=0; int zong=0; int h=0; fp=fopen("chaoshi.txt","r"); for
10、i=1;i<=k;i++) fread(&sp[i],sizeof(struct goods),1,fp); fclose(fp); do { g++; y++; loop: printf(" 请输入商品编号和数量,例如:(100 20)\n\t\t\t"); scanf("%d %d",&j[y],&a[y]); for(z=1;z<=k;z++) { if(j[y]==sp[z].num) { h++; sp[z].amount=sp[z].amount+
11、a[y]; m=a[y]*sp[z].price; sc[y]=sp[z]; } } if(h==0) { printf(" 输入有误,请重新输入\n\t\t\t"); goto loop; } fp=fopen("chaoshi.txt","wt"); for(i=1;i<=k;i++) fwrite(&sp[i],sizeof(struct goods),1,fp); fclose(fp); printf("
12、 是否继续,是(1),否(0)\n\t\t\t"); scanf("%d",&flag); }while(flag!=0); chakan(); } shanchu()//删除商品模块 { int z; int j[100],a[100]; int c=0; int y=0; int h=0; do { c++; loop: printf(" 请输入您想删除的商品编号\n\t\t\t"); scanf("%d",&j[y]); for(z=1;z<=k;z++)
13、 { h++; if(j[y]==sp[z].num) sp[z]=sp[z+1]; } if(h==0) { printf(" 输入有误,请重新输入\n\t\t\t"); goto loop; } fp=fopen("chaoshi.txt","wt"); for(i=1;i<=(k-1);i++) fwrite(&sp[i],sizeof(struct goods),1,fp); fclose(fp); printf("
14、 是否继续,是(1),否(0)\n\t\t\t"); scanf("%d",&flag); }while(flag!=0); chakan(); } shijian() { struct tm when; time_t now; time(&now); when=*localtime(&now); printf(" %s\n",asctime(&when)); } main()//主函数 { int choice; do { printf("\n\n
15、\n ********超市管理系统*******\n\n"); printf(" 1.进货\n"); printf(" 2.销售\n"); printf(" 3.增加商品数量\n"); printf(" 4.删除商品\n"); printf(" 5.查看目前库存\n");
16、 printf(" 0.返回主菜单\n"); printf(" 请选择您要进展的操作\n\t\t\t"); scanf("%d",&choice); switch(choice) { case 1:jinhuo();break; case 2:xiaoshou();break; case 3:zengjia();break; case 4:shanchu();break; case 5:chakan();break; case 0:break; default :printf(" 输入有误,请重新输入\n\t\t\t"); } }while(choice!=0); } . . word.zl-






