您的位置:首页 > 编程语言 > C语言/C++

c++实现两个元素进栈和出栈的顺序

2015-09-20 17:40 232 查看
1、在数据结构的书中大多是伪代码,没有给出一个完整的程序,在此小编给大家一个完整的简单的入栈出栈操作。

2、实现的功能是:观察两个数的入栈和出栈顺序。
3、程序和代码:
#include<iostream>
#include<stdlib.h>
using namespace std;
struct Stack{
int* base;
int top;
int stack_size;
};
int IniStack(Stack &s,int size){
s.base=(int*)malloc(size *sizeof(int));
if(s.base==NULL)return 0;
s.top=0;
s.stack_size=size;
return 1;
}
int Push(Stack &s,int e){
s.base[s.top]=e;
s.top++;
return 1;
}
int Pop(Stack &s){
if(s.base[s.top]==0)return 0;
s.top--;
return s.base[s.top];
}
int exchange(int x,int y){
Stack s;
IniStack(s,3);
Push(s,x);
Push(s,y);
x=Pop(s);
y=Pop(s);
cout<<"x="<<x<<"y="<<y<<endl;
return 1;
}
int main(){
int x,y;
cout<<"请输入x的值:"<<endl;
cin>>x;
cout<<"请输入y的值:"<<endl;
cin>>y;
exchange(x,y);
return 0;
}
运行结果:
请输入x的值:
45
请输入y的值:
56
x=56y=45
请按任意键继续. . .
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C++;数据结构;