请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
链表文件操作
Link l;/* 连表 */
FILE *fp; /* 文件指针 */
int sel;
char ch;
char jian;
int count=0;
Node *p,*r;
l=(Node*)malloc(sizeof(Node));
l->next=NULL;
r=l;
fp=fopen("cost.dat","rb");
if(fp==NULL)
{
printf("\n=====>提示:文件还不存在,是否创建?(y/n)\n");
scanf("%c",&jian);
if(jian=='y'||jian=='Y')
{
fp=fopen("cost.dat","wb");
menu();
}
else
exit(0);
}
printf("\n=====>提示:文件已经打开,正在导入记录......\n");
while(!feof(fp))
{
p=(Node*)malloc(sizeof(Node));
if(fread(p,sizeof(Node),1,fp)) /* 将文件的内容放入接点中 */
{
p->next=NULL;
r->next=p;
r=p; /* 将该接点挂入连中 */
count ;
}
}
fclose(fp); /* 关闭文件 */
puts("\033[2J");
printf("\n=====>提示:记录导入完毕,共导入%d条记录.\n",count);
//ini();
while(1)
{
menu();
printf("请你选择操作:");
scanf("%d",&sel);
if(sel==0)
{
if(shouds==1)
{ getchar();
printf("\n=====>提示:资料已经改动,是否将改动保存到文件中(y/n)?\n");
scanf("%c",&ch);
if(ch=='y'||ch=='Y')
S(l);
}
printf("\n=====>提示:你已经退出系统,再见!\n");
break;
}
switch(sel)
{
/* printf("\t5查询排序消费记录\t\t\t6统计 消费 记录\n");
printf("\t7保存消费记录资料\t\t\t8打印全部消费记录\n");*/
case 1:Add(l);break; /* 增加消费记录 */
case 2:Del(l);break;/* 删除消费记录 */
case 3:Qur(l);break;/* 查询消费记录 */
case 4:Modify(l);break;/* 修改消费记录 */
case 5: Sort(l);break;/* 查询排序记录 */
case 6:Tongji(l);break;/* 统计消费记录 */
case 7:S(l);break;/* 保存消费记录 */
case 8:Disp(l) ;break;/* 打印记录 */
case 9:Sort_huifu( l);break;
//case 9:printf("\t\t\t==========帮助信息==========\n");break;
default: Wrong();getchar();break;
}
}
system("pause");
return 0;
}