《华中科技大学计算机学院C++实验报告 实验三.docx》由会员分享,可在线阅读,更多相关《华中科技大学计算机学院C++实验报告 实验三.docx(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、华中科技大学计算机学院C+实验报告实验三当前位置:文档视界华中科技大学计算机学院C+实验报告实验三华中科技大学计算机学院C+实验报告实验三一、需求分析1.题目要求整型栈是一种先进后出的存储构造,对其进行的操作通常包括判定栈能否为空、向栈顶添加一个整型元素、出栈等。整型栈类型及其操作函数采用面向对象的C+语言定义,请将完成上述操作的所有函数采用C+编程,然后写一个main函数对栈的所有操作函数进行测试。classSTACKint*constelems;/申请内存用于存放栈的元素constintmax;/栈能存放的最大元素个数intpos;/栈实际已有元素个数,栈空时pos=0;public:ST
2、ACK(intm);/初始化栈:最多m个元素STACK(constSTACK/用栈s拷贝初始化栈virtualintsize()const;/返回栈的最大元素个数maxvirtualoperatorint()const;/返回栈的实际元素个数posvirtualintoperator(intx)const;/取下标x处的栈元素virtualSTACK&operator(int/出栈到e,并返回栈virtualSTACK&operator=(constSTACK/赋s给栈,并返回被赋值的栈virtualvoidprint()const;/打印栈virtualSTACK();/销毁栈;2.需求分析
3、采用面向对象的C+语言定义,构建整型栈并对其进行判定栈能否为空、向栈顶添加一个整型元素、出栈等操作。二、系统设计概要设计用构造实现栈,此构造包括指向栈的指针,最大容量,和当前的元素个数等三个元素。要求是栈的元素是栈元素类型是整形。的局部数据构造。三、软件开发使用CodeBlocks进行编写并进行调试。当前位置:文档视界华中科技大学计算机学院C+实验报告实验三华中科技大学计算机学院C+实验报告实验三当前位置:文档视界华中科技大学计算机学院C+实验报告实验三华中科技大学计算机学院C+实验报告实验三五、经过和体会1.碰到的主要问题和解决方法刚开场对运算符重载有很大的质疑,并且不会怎么使用运算符重载。
4、后来经过跟同学们的沟通顺利的完成了实验所要求的内容。2.课程设计的体会通过本次实验让我对C+中对整型栈的创立和对其进行操作有了更进一步的了解。六、源码和讲明1.文件清单及其功能讲明main.c是源程序frdds.exe为可执行程序2.用户使用讲明书使用CodeBlocks进行编译。3.源代码#include#include#include#includeusingnamespacestd;classSTACKint*constelems;/申请内存用于存放栈的元素constintmax;/栈能存放的最大元素个数intpos;/栈实际已有元素个数,栈空时pos=0;public:STACK(in
5、tm);/初始化栈:最多m个元素STACK(constSTACK/用栈s拷贝初始化栈virtualintsize()const/返回栈的最大元素个数maxreturnmax;/返回栈的最大元素个数maxvirtualoperatorint()const/返回栈的实际元素个数posreturnpos;/返回栈的实际元素个数posvirtualintoperator(intx)const/取下标x处的栈元素returnelemsx;virtualSTACK&operator=max)cout(int&e)/出栈到e,并返回栈if(pos=0)cout当前位置:文档视界华中科技大学计算机学院C+实验报告实验三华中科技大学计算机学院C+实验报告实验三当前位置:文档视界华中科技大学计算机学院C+实验报告实验三华中科技大学计算机学院C+实验报告实验三coutx1;x2=st1x1;coute;st1e3;coute4;if(e4=1)st1.print();elsest2.print();getchar();getchar();break;case8:coute5;当前位置:文档视界华中科技大学计算机学院C+实验报告实验三华中科技大学计算机学院C+实验报告实验三
限制150内