早教吧作业答案频道 -->其他-->
用MFC做栈类模板的设计与实现进行栈类模板的设计并实现,栈采用链式存储结构,数据元素可以是char,int,float等多种数据类型,包括以下功能:(1)实现初始化栈操作,建立一个空栈;(
题目详情
用MFC做栈类模板的设计与实现
进行栈类模板的设计并实现,栈采用链式存储结构,数据元素可以是char,int, float等多种数据类型,包括以下功能:(1) 实现初始化栈操作,建立一个空栈;(2) 实现清空栈操作;(3) 实现判断栈是否为空的操作;(4) 实现求栈长度的操作;(5) 实现返回栈顶元素的操作;(6) 实现入栈操作;(7) 实现出栈操作;(8)实现栈的遍历操作,输出栈的每个元素。(9) 将上述功能作为类的成员函数实现,编写主函数测试上述功能。
进行栈类模板的设计并实现,栈采用链式存储结构,数据元素可以是char,int, float等多种数据类型,包括以下功能:(1) 实现初始化栈操作,建立一个空栈;(2) 实现清空栈操作;(3) 实现判断栈是否为空的操作;(4) 实现求栈长度的操作;(5) 实现返回栈顶元素的操作;(6) 实现入栈操作;(7) 实现出栈操作;(8)实现栈的遍历操作,输出栈的每个元素。(9) 将上述功能作为类的成员函数实现,编写主函数测试上述功能。
▼优质解答
答案和解析
#include<iostream>
using namespace std;
template<class T>
class Stack
{
private:
T s[10];
int top;
public:
bool push(T a);
T pop(int i);
bool stackempty();
Stack(){top=0;}
};
template<class T>
bool Stack<T>::push(T a)
{
if(top<10)
{
s[top++]=a;
return 1;
}
else
return 0;
}
template<class T>
T Stack<T>::pop(int i)
{
if(i==0)top--;
return s[top--];
}
template<class T>
bool Stack<T>::stackempty()
{
if(s)
return 0;
else
return 1;
}
void main()
{
int a,n;char b;
Stack<int> a1;
cout<<"请输入栈元素个数:";
cin>>n;
cout<<"请输入栈元素:";
for(int i=0;i<n;i++)
{
cin>>a;
a1.push(a);
}
cout<<"出栈:";
for(int i=0;i<n;i++)
cout<<a1.pop(i)<<" ";
cout<<endl;
Stack<char> a2;
cout<<"请输入栈元素个数:";
cin>>n;
cout<<"请输入栈元素:";
for(int i=0;i<n;i++)
{
cin>>b;
a2.push(b);
}
cout<<"出栈:";
for(int i=0;i<n;i++)
cout<<a2.pop(i)<<" ";
cout<<endl;
}
看了 用MFC做栈类模板的设计与实...的网友还看了以下:
用铁锤把小铁钉钉入木板,设木板对钉子的阻力与钉进木板的深度成正比,已知铁锤第一次将钉子钉进d,如果 2020-05-22 …
诸位,问一道物理题收割机拔禾轮上面通常装6个压板,拔禾轮一边转动一边随收割机前进,压板转到下方才发 2020-06-16 …
(2011年)位于某市甲地板厂为外商投资企业,沈10年8月份进购一批木材,取得增值税发票注明不含税 2020-06-19 …
如图所示,水平放置的平行金属板的板长l=4cm,板间匀强电场的场强E=104N/C,一束电子以初速 2020-06-28 …
用锤子把钉子打入木板,已知木板对钉子的阻力与钉子进入的深度成正比,即f=kx,锤子打击第一次时把钉 2020-07-07 …
精馏塔,其他条件不变只原来在最佳进料板进料,现进料板上移两块理论板,xD,xW有何变化 2020-07-12 …
组织行为学判断题渐进式变革力求在短时间内,对组织进行大幅度的全面调整;激进式变革则是通过对组织进行 2020-08-01 …
用铁锤把小铁钉钉入木板,设木板对钉子的阻力与钉进木板的深度成正比已知铁锤第一次将钉子钉进的深度为d, 2020-10-30 …
请问英文书信的三种格式——缩进式、平头式、混合式的具体的格式可以告诉我吗?给我模板可以吗? 2020-11-02 …
实木地板怎么分品质实木地板有分全A板AB板之类的这个有什么区别怎么区分 2020-11-21 …