70,023
社区成员




void input()
{
struct Info info;
FILE *fp1,*fp2;
char f,ch[10];
fp1=fopen("1.dat","rb");//已存在只读二进制文件
fp2=fopen("2.dat","wb+");// 新建文件,允许读写 ,储存更新后的货物信息
printf("请输入货物编号:");
//scanf("%s",&ch);
scanf("%s", ch);
while(!feof(fp1))//读完fp1中的进库货物
{
if(fread(&info,sizeof(info),1,fp1))//从fp1中可以读1个对象到info中
{
if(strcmp(ch,info.num)==0)//如果该货物已经存在
{
printf1();
printf2(info);//查看目前库存
printf("请输入货物数量:");
scanf("%d",&info.amount);
printf("\n");
fwrite(&info,sizeof(info),1,fp2);//更新库存信息
while(!feof(fp1))
{
if(fread(&info,sizeof(info),1,fp1))
fwrite(&info,sizeof(info),1,fp2);
}
break;
}
}
else//出现新商品种类
{
printf("请输入新的信息:\n");
printf("请输入货物名称:");
scanf("%s",&info.name);
printf("\n");
printf("请输入货物数量:");
scanf("%d",&info.amount);
printf("\n");
printf("请输入货物编号:");
scanf("%s",&info.num);
fwrite(&info,sizeof(info),1,fp2);//更新库存信息
}
}
fclose(fp1);
fclose(fp2);
remove("1.dat");
rename("2.dat","1.dat");
printf("按任意键返回菜单");
getchar();
system("cls");
menu();
}