C语言:反向输出栈方法实现-创新互联

#include#define MAXLEN 100
typedef int DataType;
typedef struct
{DataType data[MAXLEN];
	int top;
}SeqStack;
void InitStack(SeqStack *S);//初始化栈 
int EmptyStack(SeqStack *S);//栈空判断函数 
int FullStack(SeqStack *S);//栈满判断函数 
int push(SeqStack *S , DataType x);//入栈操作函数 
int pop(SeqStack *S , DataType *x);//出栈操作函数 
int main()
{SeqStack S;
	DataType x;
	int flag , n;
	printf("请输入入栈的元素个数:");
	scanf("%d",&n);
	for(int i = 0 ; i< n ; i++){scanf("%d",&x);
		flag = push(&S,x);
	}
//	printf("入栈操作成功!\n");
	flag = 0;
	printf("出栈的元素为:");
	for(int i = 0 ; i< n ; i++){flag = pop(&S,&x);
		printf("%3d",x);
	}
//	printf("\n出栈操作成功!\n");
	return 0;
} 
void InitStack(SeqStack *S)
{//创建一个空栈,栈顶下标top初始化为-1 
	S->top = -1;
}
int EmptyStack(SeqStack *S)
{//判断栈空函数
	if(S->top==-1){return 1;
	}else{return 0;
	}
}
int FullStack(SeqStack *S)
{//判断栈满函数 
	if(S->top == MAXLEN-1){return 1;
	}else{return 0;
	}
}
int push(SeqStack *S , DataType x)
{//入栈操作函数 
	if(FullStack(S)){printf("栈满,不能进栈操作!");
		return 0;
	}else{S->top++;
		S->data[S->top] = x;
		return 1;
	}
} 
int pop(SeqStack *S , DataType *x) 
{//出栈操作函数
	if(EmptyStack(S)){printf("栈空,不能出栈操作!");
		return 0;
	}else{*x = S->data[S->top];
		S->top--;
		return 1;
	} 
}

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧

创新互联公司专注于皮山网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供皮山营销型网站建设,皮山网站制作、皮山网页设计、皮山网站官网定制、微信小程序开发服务,打造皮山网络公司原创品牌,更为您提供皮山网站排名全网营销落地服务。

网站题目:C语言:反向输出栈方法实现-创新互联
网站地址:https://www.cdcxhl.com/article48/dcheep.html

成都网站建设公司_创新互联,为您提供手机网站建设静态网站服务器托管Google云服务器网站改版

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都网页设计公司