10 chain stack

/*
姓名:高万禄
日期:2020/1/27
名称:链栈
*/
#include<stdio.h>
#include<stdlib.h>
#define SIZE sizeof(struct linkstack)
struct linkstack
{
	int data;
	struct linkstack *next;
};
int main(void)
{
	//建立一个栈顶 
	struct linkstack *stacktop,*p;
	int i,n;
	//栈大小n
	printf("栈大小n\n"); 
	scanf("%d",&n);
	getchar();
	i=n;
	///////////////
	//入栈
	printf("入栈\n"); 
	while(i--)
	{
	p=(struct linkstack*)malloc(SIZE);
	scanf("%d",&p->data);
	getchar();
	if(i==n-1){
	p->next=NULL;
      }
      else{
      p->next=stacktop;	
	}
	stacktop=p;
	}
	//////////////
	//出栈
	printf("出栈\n"); 
	p=stacktop;
	while(p)
	{
		printf("%d\n",p->data);
		p=p->next;
	}
	//////////////
	//栈顶元素
	printf("栈顶元素\n"); 
	printf("%d\n",stacktop->data); 
	return 0;
}
Published 25 original articles · won praise 0 · Views 86

Guess you like

Origin blog.csdn.net/qq_45812941/article/details/104413474
Recommended