2023/09/08 qt&c++ day3

自行封装一个栈的类,包含私有成员的属性:栈的数组,记录栈顶的变量

成员函数:构造函数、析构函数、拷贝构造函数、入栈、出栈、清空栈、判空、判满、获取栈顶元素、求站的大小

头文件

#ifndef STACK_H
#define STACK_H
#include 
using namespace std;
class st
{
private:
    //记录栈顶的变量
    int top;
    //使用指针来存储栈
    int *data;

public:
    //构造函数
    st():top(-1),data(new int[5])
    {
        cout<<"无参构造函数"<

功能函数

#include "stack.h"

//入栈
int st::stack_in(int e,int *data)
{
    if(nullptr == data||stack_full(data))
    {
        cout<<"入栈失败!"<=0;i--)
    {
        cout<<"  "<

主函数

#include "stack.h"
int main()
{
    st s1;
    int stack[5];
    //入栈
    s1.stack_in(3,stack);
    s1.stack_show(stack);
    s1.stack_top(stack);
    s1.stack_size(stack);
    s1.stack_in(4,stack);
    s1.stack_show(stack);
    s1.stack_top(stack);
    s1.stack_size(stack);
    s1.stack_in(5,stack);
    s1.stack_show(stack);
    s1.stack_top(stack);
    s1.stack_size(stack);
    s1.stack_in(6,stack);
    s1.stack_show(stack);
    s1.stack_top(stack);
    s1.stack_size(stack);
    s1.stack_in(7,stack);
    s1.stack_in(7,stack);
    s1.stack_in(7,stack);
    s1.stack_in(7,stack);
    //遍历栈
    s1.stack_show(stack);
    //出栈
    s1.stack_out(stack);
    s1.stack_out(stack);
    s1.stack_out(stack);
    s1.stack_out(stack);
    s1.stack_out(stack);
    s1.stack_out(stack);
     //遍历栈
    s1.stack_show(stack);
    //获取栈顶元素
    s1.stack_show(stack);
    s1.stack_top(stack);
    s1.stack_size(stack);

      //求栈的大小
     //清空栈
    s1.stack_clear(stack);
    return 0;
}

2023/09/08 qt&c++ day3_第1张图片

封装一个循环顺序队列的类,包含私有成员属性:存放队列的数组、队头位置、队尾位置

成员函数:构造函数、析构函数、拷贝构造函数、入队、出队、清空队列、判空、判满、求队列大小

头文件

#ifndef QUEUE_H
#define QUEUE_H
#include 
using namespace std;
class queue
{
private:
    //存放队列的数组
    int *data;
    //队头位置下标
    int head;
    //队尾位置下标
    int tail;
public:
    //构造函数
    queue():data(new int[5]),head(tail=0),tail(head=0)
    {
        cout<<"无参构造函数"<

功能函数

#include "queue.h"
//判空
int queue::queue_empty(int *data)
{
    if(nullptr == data)
    {
        cout<<"不合法!"<

主函数

#include "queue.h"
int main()
{
    //实例化对象
    queue q1;
    int d[5];
    //入队
    q1.queue_in(1,d);
    q1.queue_in(2,d);
    q1.queue_in(3,d);
     q1.queue_show(d);


    q1.queue_in(4,d);
    q1.queue_in(10,d);
    q1.queue_in(13,d);
    q1.queue_show(d);


    q1.queue_in(16,d);
    //遍历
    q1.queue_show(d);
    //出队
    q1.queue_out(d);
     q1.queue_show(d);
    //求队列大小
    int len =q1.queue_size(d);
    cout<<"len = "<

你可能感兴趣的:(qt,c++,开发语言)