Problem E: 类的应用
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 63 Solved: 31
[ Submit][ Status][ Web Board]
Description
•
设计一个栈类完成压栈和出栈操作。
•栈有下面这样的特点:
1) 用数组描述的顺序栈,只有一个对数据进行存入和取出的端口;
2) 后进者先出,即最后被存入的数据将首先被取出。取出也只可以从顶端进行,即后进先出。
1) 用数组描述的顺序栈,只有一个对数据进行存入和取出的端口;
2) 后进者先出,即最后被存入的数据将首先被取出。取出也只可以从顶端进行,即后进先出。
提交压栈,出栈函数即可。
#include<iostream>
using namespace std;
class stack
{
float data[6];
int top;
public:
stack(void);
void push(float a);
float pop(void);
};
stack::stack(void)
{ top=0; cout<<"stack initialized" ;}
// 此处为进栈、出栈函数
int main()
{ stack s1;
int i;
for(i=1;i<=6;i++)
s1.push(2*i);
for(i=1;i<=6;i++)
cout<<s1.pop()<<" ";
}
Input
由主程序中给出,见参考程序中的main()函数。
Output
stack initialized12 10 8 6 4 2
Sample Input
由主程序中给出。
Sample Output
stack initialized12 10 8 6 4 2
HINT
#include<iostream>
using namespace std;
class stack
{
float data[6];
int top;
public:
stack(void);
void push(float a);
float pop(void);
};
stack::stack(void)
{
top=0;
cout<<"stack initialized" ;
}
// 此处为进栈、出栈函数
void stack::push(float a) //入栈函数
{
data[top]=a;
top++;
}
float stack::pop(void) //出栈函数
{
top--;
return data[top];
}
//end
int main()
{
stack s1;
int i;
for(i=1; i<=6; i++)
s1.push(2*i);
for(i=1; i<=6; i++)
cout<<s1.pop()<<" ";
}
本文详细介绍了栈类的实现,包括压栈、出栈操作,以及如何使用数组描述顺序栈来实现后进先出的特点。
2102

被折叠的 条评论
为什么被折叠?



