数据结构链栈

//链栈

#include<stdio.h>
#include<malloc.h>

struct node{
	int data;
	struct node *next;
};

main()
{
	struct node *top,*p,*q;
	int x;
	scanf("%d",&x);
	top=(struct node *)malloc(sizeof(struct node));			//产生一个节点
	top->next=NULL;


	printf("\n%d=",x);
while(x!=0)			//入栈
{
	p=(struct node *)malloc(sizeof(struct node));		//产生节点
	p->data=x%2;
	p->next=top->next;		//现在的节点指向top后的元素
	top->next=p;			
	x=x/2;

}

while(top->next!=NULL)
{
	q=top->next;
	printf("%d",q->data);
	
	top->next=q->next;
	free(q);
}
printf("\n");

}

 

posted @ 2019-09-29 09:47  JackieDYH  阅读(2)  评论(0编辑  收藏  举报  来源