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

使用C語言順序表數(shù)據(jù)結(jié)構(gòu)實現(xiàn)棧的代碼示例

 更新時間:2023年09月22日 09:11:53   作者:gnip  
這篇文章主要給大家介紹了如何使用C語言順序表數(shù)據(jù)結(jié)構(gòu)實現(xiàn)棧,文章通過代碼示例介紹的非常詳細,對大家的學(xué)習(xí)或工作有一定的參考價值,需要的朋友可以參考下

代碼

頭文件、聲明等

#include<stdio.h>
#include<assert.h>
#include<stdlib.h>
#define true 1
#define false 0
#define bool char
#define MAX_SIZE 10
//鏈表數(shù)據(jù)類型
typedef int ElementType;
typedef struct Stack
{
	ElementType data[MAX_SIZE];
	int top;//棧頂指針(數(shù)組下標)
} Stack;
bool initStack(Stack* S);
bool push(Stack* S, ElementType data);
bool pop(Stack* S);
bool getTop(Stack* S, ElementType* x);

main函數(shù)

int main() {
	Stack S;
	initStack(&S);
	push(&S, 1);
	push(&S, 2);
	push(&S, 3);
	ElementType x;
	pop(&S);
	getTop(&S, &x);
	printf("%d", x);
	return 0;
}

初始化

bool initStack(Stack* S) {
	for (int i = 0; i < MAX_SIZE; i++) {
		S->data[i] = 0;
	}
	S->top = -1;
	return true;
}

判斷為空

bool isEmpty(Stack* S) {
	if (S->top == -1) {
		return true;
	}
	return false;
}

入棧

bool push(Stack* S, ElementType data) {
	if (S->top == MAX_SIZE - 1) {
		return false;
	}
	S->data[++(S->top)] = data;
	return true;
}

出棧

bool pop(Stack* S) {
	if (S->top == -1) {
		return false;
	}
	S->data[S->top] = 0;
	S->top--;
	return true;
}

獲取棧頂元素

bool getTop(Stack* S, ElementType *x) {
	if (S->top == -1) {
		return false;
	}
	*x = S->data[S->top];
	return true;
}

以上就是使用C語言順序表數(shù)據(jù)結(jié)構(gòu)實現(xiàn)棧的代碼示例的詳細內(nèi)容,更多關(guān)于C語言實現(xiàn)棧的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • C++-操作符重載、并實現(xiàn)復(fù)數(shù)類詳解

    C++-操作符重載、并實現(xiàn)復(fù)數(shù)類詳解

    這篇文章主要介紹了C++-操作符重載、并實現(xiàn)復(fù)數(shù)類,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • C++編程產(chǎn)生指定范圍內(nèi)的隨機數(shù)

    C++編程產(chǎn)生指定范圍內(nèi)的隨機數(shù)

    這篇文章主要為大家詳細介紹了C++編程產(chǎn)生指定范圍內(nèi)的隨機數(shù),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • c++ 虛函數(shù),虛表相關(guān)總結(jié)

    c++ 虛函數(shù),虛表相關(guān)總結(jié)

    這篇文章主要介紹了c++ 虛函數(shù),虛表的的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用c++,感興趣的朋友可以了解下
    2021-03-03
  • matlab?GUI指紋識別門禁系統(tǒng)介紹及源碼實現(xiàn)

    matlab?GUI指紋識別門禁系統(tǒng)介紹及源碼實現(xiàn)

    這篇文章主要為大家介紹了matlab?GUI指紋識別門禁系統(tǒng)的介紹及源碼實現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2022-02-02
  • C/C++ INI文件操作實現(xiàn)代碼

    C/C++ INI文件操作實現(xiàn)代碼

    本文章主要為分享C/C++ INI文件操作實現(xiàn)代碼,增加注釋和修復(fù)了一些問題。這里給出完整的實現(xiàn)文件,在需要的地方包含該頭文件就好了
    2020-02-02
  • 詳解C語言中結(jié)構(gòu)體的自引用和相互引用

    詳解C語言中結(jié)構(gòu)體的自引用和相互引用

    這篇文章主要介紹了C語言中結(jié)構(gòu)體的自引用和相互引用,詳細解析了結(jié)構(gòu)體中指針的指向情況,需要的朋友可以參考下
    2016-04-04
  • C++中fork函數(shù)的使用及原理

    C++中fork函數(shù)的使用及原理

    這篇文章主要介紹了C++中fork函數(shù)的使用及原理,在C++中,fork函數(shù)用于創(chuàng)建一個新的進程稱為子進程,該進程與原始進程幾乎完全相同,需要的朋友可以參考下
    2023-05-05
  • C++ 中 <iterator> <functional> <numeric> 庫好用的函數(shù)詳解

    C++ 中 <iterator> <functional>&nbs

    這篇文章主要介紹了C++ 中 <iterator> <functional> <numeric> 庫好用的函數(shù),本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2023-11-11
  • C++命名空間namespace的介紹與使用

    C++命名空間namespace的介紹與使用

    今天小編就為大家分享一篇關(guān)于C++命名空間namespace的介紹與使用,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-12-12
  • C++11中delete和default的用法詳解

    C++11中delete和default的用法詳解

    這篇文章主要為大家詳細介紹了C++11中delete和default的具體用法,文中的示例代碼簡潔易懂,具有一定的學(xué)習(xí)價值,感興趣的小伙伴可以了解下
    2023-08-08

最新評論

苍溪县| 北京市| 页游| 合江县| 镇平县| 克什克腾旗| 光山县| 镇康县| 曲水县| 马公市| 荔波县| 安阳县| 崇州市| 太仆寺旗| 贞丰县| 长治市| 西乌珠穆沁旗| 峨边| 海淀区| 遂川县| 宝坻区| 连南| 承德市| 大关县| 富锦市| 大渡口区| 南川市| 即墨市| 甘谷县| 政和县| 株洲县| 青阳县| 苏州市| 夏津县| 商河县| 大方县| 合阳县| 绥棱县| 武隆县| 平乡县| 孙吴县|