订单管理.docx
《订单管理.docx》由会员分享,可在线阅读,更多相关《订单管理.docx(15页珍藏版)》请在冰豆网上搜索。
订单管理
#include
#include
#include
#include
#include
#defineLENsizeof(structdingdan)
#defineHEADER1"%8d%8s%10d%10d%8d%10s%10s%15d\n"
//#defineFORMAT"%-15d%-15s%-15d%-15d%-15d%-15s%-15s%-15d\n"
#defineDATAdd[i].pm,dd[i].name,dd[i].num,dd[i].price,dd[i].total,dd[i].mj,dd[i].mjia,dd[i].time
voidin();
voidseach();
voiddel();
voidxiugai();
voidorder();
voidshow();
voidesc();
structdingdan
{
charmj[10],mjia[10],name[10];
intnum,price,total,pm;
inttime;
};
structdingdandd[50];
voidin()
{
inti,m=0;
charch[2];
FILE*fp;
if((fp=fopen("data.txt","a+"))==NULL)
{
printf("没有发现指定文件\n");
return;
}
while(!
feof(fp))
{
if(fread(&dd[m],LEN,1,fp)==1)
m++;
}
fclose(fp);
if(m==0)
printf("还没有订单记录\n");
else{
system("els");
show();
}
if((fp=fopen("data.txt","wb"))==NULL)
{
printf("无法打开\n");
return;
}
for(i=0;ifwrite(&dd[i],LEN,1,fp);
printf("现在录入订单?
(y/n):
");
scanf("%s",ch);
while(strcmp(ch,"y")==0||strcmp(ch,"Y")==0)
{
printf("请输入订单编码:
");
scanf("%d",&dd[m].pm);
for(i=0;iif(dd[i].pm==dd[m].pm)
{
printf("订单编码相同,请重新输入:
");
getch();
fclose(fp);
return;
}
printf("订单名称:
");
scanf("%s",&dd[m].name);
printf("订单数量:
");
scanf("%d",&dd[m].num);
printf("单价:
");
scanf("%d",&dd[m].price);
printf("买家:
");
scanf("%s",dd[m].mj);
printf("卖家:
");
scanf("%s",dd[m].mjia);
printf("交易时间:
");
scanf("%d",&dd[m].time);
dd[m].total=dd[m].num*dd[m].price;
if(fwrite(&dd[m],LEN,1,fp)!
=1)
{
printf("无法保存:
\n");
getch();
}
else{
printf("%d保存成功!
\n",dd[m].bh);
m++;
}
printf("继续录入吗?
(y/n):
");
scanf("%s",ch);
}
fclose(fp);
printf("录入完毕\n");
}
voidshow()
{
FILE*fp;
inti,m=0;
fp=fopen("data.txt","rb");
while(!
feof(fp))
{
if(fread(&dd[m],LEN,1,fp)==1)
m++;
}
fclose(fp);
printf("订单详情\n");
for(i=0;i{
printf("|--编码-|--名称---|---数量-|---单价--|---总价-|--买家=--|---卖家--|-交易时间-|");
printf(HEADER1,DATA);
}
}
voidmenu()
{
system("cls");
printf("\n\n\n\n");
printf("\t\t\t!
!
!
!
!
!
!
!
!
!
!
订单管理!
!
!
!
!
!
!
!
!
!
!
!
\n");
printf("\t\t\t++++++++++++++++++++++++++++++++\n\n");
printf("\t\t\t\t0:
退出系统\n");
printf("\t\t\t\t1:
订单添加\n");
printf("\t\t\t\t2:
订单查询\n");
printf("\t\t\t\t3:
订单删除\n");
printf("\t\t\t\t4:
订单修改\n");
printf("\t\t\t\t5:
订单按日期排序\n");
printf("\t\t\t\t6:
订单显示\n\n");
printf("\t\t\t++++++++++++++++++++++++++++++++\n");
printf("\t\t\t!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
\n");
printf("\t\t请选择:
");
}
voidorder()
{
FILE*fp;
structdingdant;
inti=0,j=0,m=0;
if((fp=fopen("data.txt","r+"))==NULL)
{
printf("无法打开\n");
return;
}
while(!
feof(fp))
{
if(fread(&dd[m],LEN,1,fp)==1)
m++;
}
fclose(fp);
if(m==0)
{
printf("没有记录\n");
return;
}
for(i=0;ifor(j=i+1;jif(dd[i].time>dd[j].time)
{
t=dd[i];
dd[i]=dd[j];
dd[j]=t;
}
if((fp=fopen("data.txt","wb"))==NULL)
{
printf("无法打开\n");
return;
}
for(i=0;iif(fwrite(&dd[i],LEN,1,fp)!
=1)
{
printf("订单无法保存\n");
getch();
}
for(i=0;i{
printf("---编码-|--名称---|---数量-|---单价--|---总价-|--买家=--|---卖家--|-交易时间-|");
printf(HEADER1,DATA);
}
fclose(fp);
printf("订单已经保存\n");
}
voiddel()
{
FILE*fp;
intsnum,i,j,m=0;
charch[2];
if((fp=fopen("data.txt","r+"))==NULL)
{
printf("无法打开\n");
return;
}
while(!
feof(fp))
{
if(fread(&dd[m],LEN,1,fp)==1)
m++;
}
fclose(fp);
if(m==0)
{
printf("没有记录\n");
return;
}
printf("请输入订单编码:
");
scanf("%d",&snum);
for(i=0;iif(snum==dd[i].pm)
break;
printf("--编码-|--名称---|---数量-|---单价--|---总价-|--买家=--|---卖家--|-交易时间-|");
printf(HEADER1,DATA);
printf("找到订单,是否删除(y\n):
");
scanf("%s",ch);
if(strcmp(ch,"y")==0||strcmp(ch,"Y")==0)
{
for(j=0;jdd[j]=dd[j+1];
m--;
if((fp=fopen("data.txt","wb"))==NULL)
{
printf("无法打开\n");
return;
}
for(j=0;jif(fwrite(&dd[j],LEN,1,fp)!
=1)
{
printf("订单无法保存\n");
getch();
}
fclose(fp);
printf("订单删除成功\n");
}
else
return;
fclose(fp);
}
voidseach()
{
FILE*fp;
intsnum,i,m=0;
if((fp=fopen("data.txt","rb"))==NULL)
{
printf("无法打开\n");
return;
}
while(!
feof(fp))
{
if(fread(&dd[m],LEN,1,fp)==1)
m++;
}
fclose(fp);
if(m==0)
{
printf("没有记录\n");
return;
}
printf("请输入订单编码:
");
scanf("%d",&snum);
for(i=0;iif(snum==dd[i].pm)
{
printf("找到订单\n");
printf("--编码-|--名称---|---数量-|---单价--|---总价-|--买家=--|---卖家--|-交易时间-|");
printf(HEADER1,DATA);
break;
}
if(i==m)
printf("订单不存在");
}
voidxiugai()
{
FILE*fp;
intsnum,i,j,m=0;
if((fp=fopen("data.txt","r+"))==NULL)
{
printf("无法打开\n");
return;
}
while(!
feof(fp))
{
if(fread(&dd[m],LEN,1,fp)==1)
m++;
}
fclose(fp);
if(m==0)
{
printf("没有记录\n");
return;
}
printf("请输入要修改订单的编码:
");
scanf("%d",&snum);
for(i=0;iif(snum==dd[i].pm)
break;
printf("--编码-|--名称---|---数量-|---单价--|---总价-|--买家=--|---卖家--|-交易时间-|");
printf(HEADER1,DATA);
printf("找到订单,请修改");
printf("请输入订单编码");
scanf("%d",&dd[i].pm);
printf("订单名称:
");
scanf("%s",&dd[i].name);
printf("订单数量:
");
scanf("%d",&dd[i].num);
printf("单价:
");
scanf("%d",&dd[i].price);
printf("买家:
");
scanf("%s",dd[i].mj);
printf("卖家:
");
scanf("%s",dd[i].mjia);
printf("交易时间:
");
scanf("%d",&dd[i].time);
dd[m].total=dd[i].num*dd[i].price;
if((fp=fopen("data.txt","wb"))==NULL)
{
printf("无法打开\n");
return;
}
for(j=0;jif(fwrite(&dd[j],LEN,1,fp)!
=1)
{
printf("订单无法保存\n");
getch();
}
fclose(fp);
printf("订单修改成功\n");
}
voidesc()
{
printf("谢谢使用\n");
}
main()
{
intn;
menu();
scanf("%d",&n);
while(n){
switch(n)
{
case0:
esc();
break;
case1:
in();
break;
case2:
seach();
break;
case3:
del();
break;
case4:
xiugai();
break;
case5:
order();
break;
case6:
show();
break;
}
getch();
menu();
scanf("%d",&n);
}
}