单链表倒序.c

来自「数据结构涵盖几乎所有的数据结构课程的实现」· C语言 代码 · 共 55 行

C
55
字号
#include<stdio.h>


struct fsb
{
	int  data;
	int  flag;
    	struct fsb * next;
};
main()
{
	struct fsb  *p,*head,*sta,*end;
	int i,cishu,j;
	end=(struct fsb *)malloc(sizeof(struct fsb));
	end->data=0;
	end->flag=0;
	end->next=NULL;
	head=p=end;
	
	for (i=2;i<=10;i++)
	{
  		end=(struct fsb *)malloc(sizeof(struct fsb));
  		end->data=i-1;
  		end->flag=0;
  		end->next=NULL;
  		p->next=end;
  		p=end;
	}
	p->next=NULL;
	printf("\n倒序前:");
	p=head;	
	for(i=1;i<=10;i++)
	{
		printf("%d ",p->data);
		p=p->next;
	}
/*************************/
	p=NULL;
	while(head->next != NULL)
	{
  		sta=head; 
  		head=head->next;
  		sta->next=p;
  		p=sta;
  	}
	head->next=sta;
	printf("\n倒序后:");
	p=head;
	for(i=1;i<=10;i++)
	{
		printf("%d ",p->data);
		p=p->next;
}
/*************************/
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?