商品信息系统,用过的都说好👍|战双帕弥什


3楼猫 发布时间:2022-03-22 23:50:21 作者:羽仙 Language

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct commodity//定义商品结构体类型commodity

{
int goodsnumber;//商品编号
char goodsname[99];//商品名称
char goodstype[99];//商品类型
int goodscount;//商品库存
double goodsamount;//商品单价
}cy[99];//cy为commodity的缩写

void input(struct commodity *p,int n);
void find(int goodsnumber);
void xiugai(int goodsnumber);
void shanchu(int goodsnumber,char goodsname[]);
void tongji(int goodsnumber,char goodstype[]);
void judge(int m);

    int i=0,x=0,a=1,b;
int aa=1,bb;
int main()
{
    while(a)
{
do
{
      printf("\n\n\n");
          printf("\t\t|-------------------------------------------------------------|\n");
          printf("\t\t|                                                             |\n");
          printf("\t\t|                  ======================                     |\n");
          printf("\t\t|                      商品信息系统                           |\n");
          printf("\t\t|                  ======================                     |\n");
          printf("\t\t|                                                             |\n");
          printf("\t\t|                     1.存入商品信息                          |\n");
          printf("\t\t|                     2.查询商品信息                          |\n");
          printf("\t\t|                     3.修改商品信息                          |\n");
          printf("\t\t|                     4.删除商品信息                          |\n");
      printf("\t\t|                     5.统计商品信息                          |\n");
      printf("\t\t|                     6.退出系统                              |\n");
          printf("\t\t|-------------------------------------------------------------|\n");
          printf("\n\t\t请输入您的选择:");
          scanf("%d",&b);
}while(b>6||b<1);
judge(b);
}
   
}
void judge(int m)

{
int n=0,k=0;
int goodsnumber;
char goodsname[99];
char goodstype[99];
switch(m)
{
case 1:printf("请输入想存入商品的个数:");
   scanf("%d",&n);
for(i=x;i<n+x;i++)
{input( &cy,i);}
x=n+x ;break;
case 2:printf("请输入商品编号查询该商品详细信息:");
scanf("%d",&goodsnumber);
     find(goodsnumber);
  printf("\t\t请选择以下选项\n\t\t1:返回主菜单\n\t\t2:退出系统\n请做出您的选择:");
scanf("%d",&k);
if(k==2)
a=0;break;
    case 3:printf("请输入商品编号来修改商品信息:");
scanf("%d",&goodsnumber);
xiugai(goodsnumber);
  printf("\t\t请选择以下选项\n\t\t1:返回主菜单\n\t\t2:退出系统\n请做出您的选择:");
scanf("%d",&k);
if(k==2)
a=0;break;
case 4:printf("请依次输入商品编号、商品名称以此来删除商品信息:");
scanf("%d %s",&goodsnumber,goodsname);
shanchu(goodsnumber,goodsname);
printf("\t\t请选择以下选项\n\t\t1:返回主菜单\n\t\t2:退出系统\n请做出您的选择:");
scanf("%d",&k);
if(k==2)
a=0;break;
    case 5:printf("请输入商品类型和商品编号以此统计数量:");
scanf("%s %d",goodstype,&goodsnumber);
tongji(goodsnumber,goodstype);
printf("\t\t请选择以下选项\n\t\t1:返回主菜单\n\t\t2:退出系统\n请做出您的选择:");
scanf("%d",&k);
if(k==2)
a=0;break;
     case 6:a = 0;break;
}
}

void input(struct commodity *p,int n)
{
FILE *fp;
fp=fopen("商品信息系统.txt","w+");
printf("请录入第%d件商品:\n",i+1);
printf("请依次输入商品编号、商品名称、商品类型、商品库存、商品单价:");
scanf("%d %s %s %d %d",&(p->goodsnumber),p->goodsname,p->goodstype,&(p->goodscount),&(p->goodsamount));
for(i=0;i<n;i++){
fwrite(&cy[n],sizeof(struct commodity),1,fp);}
fclose(fp);
}

void find(int goodsnumber)
{
int h=0;
FILE *fp;
fp=fopen("商品信息系统.txt","r");
for(i=0;i<x;i++)
{
if(goodsnumber==cy.goodsnumber )
{
h=1;
break;
}
}
if(h==1)
{   printf("\n");
printf("\t\t该商品信息如下:\n");
printf("\t商品编号:%d   商品名称:%s   商品类型:%s   商品库存:%d   商品单价:%d\n",cy.goodsnumber ,cy.goodsname ,cy.goodstype ,cy.goodscount ,cy.goodsamount );
printf("\n");
    }
else
{
printf("\n");
printf("\t没有查询到该商品!\n");
printf("\n");}
fclose(fp);
}

void xiugai(int goodsnumber)
{
int h;
int mm,u;
FILE *fp;
fp=fopen("商品信息系统.txt","r+");
for(i=0;i<x;i++)
{
if(goodsnumber==cy.goodsnumber )

printf("1:存货\n2:出售\n");
printf("请输入你想要实现的功能选项:\n");
scanf("%d",&mm);
switch(mm)
{
case 1:printf("\t请输入想要进货的数量:\n");
scanf("%d",&u);
cy.goodscount=cy.goodscount+u;
printf("现在%s的库存为:%d",cy.goodsname,cy.goodscount);break;
case 2:printf("\t请输入想要出售的数量:\n");
scanf("%d",&u);
cy.goodscount=cy.goodscount-u;
printf("现在%s的库存为:%d",cy.goodsname,cy.goodscount);break;
}
h=1;

}
}
if(h==0)
{ printf("\n");
printf("\t没有找到该商品!\n");
printf("\n");
        }
  fclose(fp);
}

void shanchu(int goodsnumber,char goodsname[])
{
int h=0;
int j;
FILE *fp;
fp=fopen("商品信息系统.txt","r+");
for(i=0;i<x;i++){
if(strcmp(goodsname,cy.goodsname)==0&&(goodsnumber==cy.goodsnumber))
{
for(j = i;j<x;j++){
cy[j].goodsnumber=cy[j+1].goodsnumber;
strcpy(cy[j].goodsname,cy[j+1].goodsname);
strcpy(cy[j].goodstype ,cy[j+1].goodstype );
cy[j].goodsamount =cy[j+1].goodsamount;
cy[j].goodscount =cy[j+1].goodscount;
x=x-1;
h=1;
break;
}
}
}
if(h){
printf("\n");
printf("\t已经删除该商品!\n");
printf("\n");
     }
else {
printf("\n");
printf("\t没有找到该商品!\n");
printf("\n");
}
fclose(fp);
}

void tongji(int goodsnumber,char goodstype[])
{
int s1=0,s2=0;
int h=0;
FILE *fp;
fp=fopen("商品信息系统.txt","r");
for(i=0;i<x;i++){
if(goodsnumber==cy.goodsnumber )
s1=cy.goodscount;h=1;
if(strcmp(cy.goodstype ,goodstype)==0)
s2++;h=1;
}
printf("\n");
printf("\t该类型的商品共有%d种!\n",s2);
printf("\t根据商品编号统计共有商品%d件!\n",s1);
printf("\n");
if(h==0){
printf("\n");
printf("\t未找到该商品!\n");
printf("\n");}
fclose(fp);
}

© 2022 3楼猫 下载APP 站点地图 广告合作:asmrly666@gmail.com