最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

深入了解C語言棧的創(chuàng)建

 更新時間:2021年07月30日 14:42:41   作者:小尹同學(xué)⁣  
棧只允許在一端進(jìn)行插入或刪除操作的線性表。首先棧是一種線性表,但是限定這種線性表只能在某一端進(jìn)行插入和刪除操作,這篇文章主要介紹了C語言對棧的實(shí)現(xiàn)基本操作

棧:是限定僅在表尾進(jìn)行插入和刪除操作的線性表!

棧的結(jié)構(gòu)定義如下:

typedef struct Stack
{
    SLDataType *base;//棧底元素的地址
    int top;//棧頂元素的位置
} Stack;

棧的初始化如下:

SLDataType initStack(Stack &S)
{
  S.base=(SLDataType*)malloc(N*sizeof(SLDataType));//申請棧元素的存儲空間
  if(S.base==NULL)
        return -1;
  S.top=0;
  return 1;
}

棧元素的輸入接口:

SLDataType pushStack(Stack &S,int e)//輸入棧的元素
{
    if(S.top==N)
        return 0;
    S.base[S.top]=e;
    S.top++;
    return 1;
}

完整代碼如下:

#include<stdio.h>
#include<stdlib.h>
#define N 30
typedef int SLDataType;
typedef struct Stack
{
    SLDataType *base;//棧底元素的地址
    int top;//棧頂元素的位置
} Stack;
SLDataType initStack(Stack &S)
{
  S.base=(SLDataType*)malloc(N*sizeof(SLDataType));
  if(S.base==NULL)
        return -1;
  S.top=0;
  return 1;
}
SLDataType pushStack(Stack &S,int e)//輸入棧的元素
{
    if(S.top==N)
        return 0;
    S.base[S.top]=e;
    S.top++;
    return 1;
}
void printStack(Stack &S)
{
    int i;
    i=0;
    while(i<S.top)
    {
        printf("%d ",S.base[i]);
        i++;
    }
    printf("\n");
}
int main()
{
    Stack S;
    int i,n,m;//n是入棧的個數(shù)
    if(initStack(S)==1)
        printf("棧初始化成功\n");
    printf("入棧的元素個數(shù)為:");
    scanf("%d",&n);
    i=1;
    printf("輸入要入棧的元素:");
    while(i<=n)
    {
        scanf("%d",&m);
        if(pushStack(S,m)==0)
        {
            printf("%d入棧失敗!\n",m);
            break;
        }
        i++;
    }
    printf("棧中的元素有:    ");
    printStack(S);//打印棧中的元素
    return 0;
}

運(yùn)行結(jié)果如下:

在這里插入圖片描述

總結(jié)

本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

最新評論

萨嘎县| 蒙城县| 奉化市| 留坝县| 巴彦淖尔市| 霍山县| 三穗县| 汉阴县| 克拉玛依市| 大兴区| 隆德县| 拜城县| 普格县| 屏山县| 潼南县| 新郑市| 阿城市| 叙永县| 漳平市| 乌海市| 余庆县| 封丘县| 铁力市| 金塔县| 遵义县| 无锡市| 安多县| 宜黄县| 荃湾区| 汝南县| 永和县| 越西县| 同江市| 油尖旺区| 犍为县| 壶关县| 泾阳县| 灌南县| 兴文县| 繁峙县| 东阳市|