C语言实现进栈和出栈.docx

上传人:牧羊曲112 文档编号:3155266 上传时间:2023-03-11 格式:DOCX 页数:3 大小:37.16KB
返回 下载 相关 举报
C语言实现进栈和出栈.docx_第1页
第1页 / 共3页
C语言实现进栈和出栈.docx_第2页
第2页 / 共3页
C语言实现进栈和出栈.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《C语言实现进栈和出栈.docx》由会员分享,可在线阅读,更多相关《C语言实现进栈和出栈.docx(3页珍藏版)》请在三一办公上搜索。

1、C语言实现进栈和出栈使用C+中STL的stack,只有C+中有,C标准库没有STL。 程序: #include #include using namespace std; stacks; int main int a,b; scanf(%d,&a); s.push(a); printf(%dn,s.top); s.pop; return 0; 方法二: 自己写程序: #include const static int g_iStackSize = 100; /定义栈长度,为100 static int g_iStackPoint = -1; /初始化栈指针为-1,也就是栈里一个元素都没有 /定

2、义栈元素数据结构,可以扩展为任意类型数据 typedef struct tagStackData int iData; /栈元素的数据,整型 stStackData,* pstStackData; /栈只保存栈元素指针 pstStackData g_arrStackg_iStackSize;/这个就是栈体了,一个长度为stacksize的数组 /压元素入栈,可以返回栈指针当前位置 /param data 压入栈的元素 /return int 为100时就是满了 int push(const pstStackData data) if(g_iStackPoint = g_iStackSize)/

3、也就是栈满了 /提示栈满 printf(stack is full.n); /返回栈指针位置 return g_iStackPoint; else/栈还没满 /压元素入栈 g_arrStackg_iStackPoint+1 = data; /移动栈指针 +g_iStackPoint; /返回栈指针位置 return g_iStackPoint; /弹出元素 /param outStackPoint输入型参数,输出栈指针位置,为-1时说明为空 /return pstStackData 弹出的栈数据 pstStackData pop(int& outStackPoint) if(g_iStackPoint iData = iInput; /压栈 iStackPoint = push(pData); while(-1 != iStackPoint)/当栈指针位置不在栈尾 /依次弹出栈里的元素 pstStackData pData = pop(iStackPoint); printf(pop value:%d;n, pData-iData); delete pData; system(pause);/让命令窗口暂停,观察输出3 return 0; 调试:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号