数据结构顺序栈

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

struct stack{
	int elem[100];
	int top;
};

main()
{
	struct stack s;				//建立栈 s是定义一个栈,包含两个元素(*s代表指针需要开辟空间)是全局变量下面使用s时不需要定义了
	int x;


	scanf("%d",&x);
	s.top=-1;					//初始化表示数组为空
	printf("\n%d=",x);
	while(x!=0)						//商为0结束循环
	{
		s.elem[s.top+1]=x%2;			//++s.top余数放入elem数组中
		s.top++;						//使top++
		x=x/2;							//改变x的值
	}


	while(s.top!=-1)
	{
		int x;
		x=s.elem[s.top];				//printf("%d",s.elem[s.top]);
		s.top--;
		printf("%d",x);
	}
	printf("\n");
}

 

posted @ 2022-08-08 10:20  JackieDYH  阅读(4)  评论(0编辑  收藏  举报  来源