栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

从键盘输入一个链表(整数,输入-1截止),排序后以二进制方式保存到文件a.bf中,然后从文件从读出,输出到屏幕上。

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

从键盘输入一个链表(整数,输入-1截止),排序后以二进制方式保存到文件a.bf中,然后从文件从读出,输出到屏幕上。

//开始上面一节复制漏了,这是写了重新补上的,运行过没有错
#include
#include

#define LEN sizeof(struct ZH)

struct ZH *Create()  ;
void Shu(struct ZH *head);
void Fang(struct ZH **head);
void Pai(struct ZH *head);

struct ZH
{
	int z;
	struct ZH *next;
};

int main()
{	
	struct ZH *head,*p;
	head=Create();
	Pai(head);
	Shu(head);
	FILE *fp;
	fp=fopen("a.bf","wb");
	if(fp==NULL)
	{
		printf("打开失败!!n!!");
		exit(0);
	}
	p=head;
	while(p!=NULL)
	{
        fwrite(&p->z ,sizeof(int),1,fp);
		p=p->next ;
	}
	fclose(fp);
	fp=fopen("a.bf","rb");
	if(fp==NULL)
	{
		printf("打开失败!!n!!");
		exit(0);
	}
	int c;
	fread(&c,sizeof(int),1,fp);
	while(!feof(fp))
	{
		printf("%3d",c);
		fread(&c,sizeof(int),1,fp);
	}
	putchar('n');
	fclose(fp);
	Fang(&head);
	return 0;
}
//链表创建
struct ZH *Create()   
{
	struct ZH *head=NULL,*p,*p1;
	p=(struct ZH*)malloc(LEN);
	scanf("%d",&p->z );
	p->next =NULL;
	while(p->z !=-1)
	{
		if(head==NULL)
		{
			head=p;
			p1=p;
		}
		else
		{
			p1->next =p;
			p1=p;
		}
		p=(struct ZH*)malloc(LEN);
	    scanf("%d",&p->z );
	    p->next =NULL;
	}
	p1->next =NULL;
	return head;
}
//输出链表
void Shu(struct ZH *head)
{
	struct ZH *p;
	p=head;
	while(p!=NULL)
	{
		printf("%3d",p->z );
		p=p->next ;
	}
	putchar('n');
}
//释放链表
void Fang(struct ZH **head)
{
	struct ZH *p;
	while(*head!=NULL)
	{
		p=*head;
		*head=(*head)->next ;
		free(p);
	}
	*head=NULL;
}
//排序,这里我只是交换了结点的值,实在有点菜,本来想交换结点,有了想法,但是写出来一直没实现
void Pai(struct ZH *head)
{
	struct ZH *p;
	p=head;
	int sum=0,i=1,j=0;
	while(p!=NULL)
	{
		sum++;
		p=p->next ;
	}
	p=head;
	int temp;
	while(iz>p->next ->z  )
			{
				temp=p->z ;
				p->z =p->next ->z ;
				p->next ->z =temp;
			}
			  p=p->next ;
			j++;
		}
		i++;
	}
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/655658.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号