日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

c语言存储结构的实现,(C语言)栈的链式存储结构的实现

發布時間:2024/7/23 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c语言存储结构的实现,(C语言)栈的链式存储结构的实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

#includetypedef struct Stack_Linklist{

int data;

struct Stack_Linklist *next;

}Node,*pNode;

typedef struct Stack{

pNode pTop;

pNode pBottom;

}Stack,*pStack;

void Initstack();//初始化;

int Isempty();//判斷棧是否為空

void Push();//壓棧

int Pop();//出棧

int Gettop();//get棧頂元素

void Traverse();//從棧頂遍歷到棧底

int main(void)//測試

{

int val;

Stack s1;

Initstack(&s1);//初始化

if(Isempty(&s1))//判斷棧空

printf("棧為空!\n");

else printf("棧不空!\n");

printf("輸入壓棧元素:");//壓棧1

scanf("%d",&val);

Push(&s1,&val);

printf("輸入壓棧元素:");//壓棧2

scanf("%d",&val);

Push(&s1,&val);

printf("輸入壓棧元素:");//壓棧3

scanf("%d",&val);

Push(&s1,&val);

if(Isempty(&s1))//判斷棧空

printf("棧為空!\n");

else printf("棧不空!\n");

if(Pop(&s1,&val))

printf("出棧成功,出棧元素為:%d\n",val);

else printf("棧為空,出棧失敗!\n");

if(Isempty(&s1))//判斷棧空

printf("棧為空!\n");

else printf("棧不空!\n");

if(Gettop(&s1,&val))//Get棧頂元素

printf("棧頂元素為%d\n",val);

else printf("棧為空!\n");

Traverse(&s1);

return 0;

}

//初始化,pBottom指向棧底,pTop指向棧頂,棧底元素next指針設置為空

void Initstack(pStack ps1)

{

ps1->pBottom=(pNode)malloc(sizeof(Node));

if(ps1->pBottom==NULL){

printf("動態內存分配失敗!\n");

exit(-1);

}

else{

ps1->pTop=ps1->pBottom;

ps1->pBottom->next=NULL;

return;

}

}

//判斷棧是為空,空返回1,不空返回0

int Isempty(pStack ps1)

{

if(ps1->pTop==ps1->pBottom)

return 1;

else return 0;

}

//壓棧;

void Push(pStack ps1,int *pVal)

{

pNode p;

p=ps1->pTop;

ps1->pTop=(pNode)malloc(sizeof(Node));

ps1->pTop->data=*pVal;

ps1->pTop->next=p;

return;

}

//出棧,用val返回出棧元素值,成功返回1,失敗返回0

int Pop(pStack ps1,int *pVal)

{

pNode p;

if(Isempty(ps1))

return 0;

else

{

p=ps1->pTop;

*pVal=ps1->pTop->data;

ps1->pTop=ps1->pTop->next;

free(p);

return 1;

}

}

//get棧頂元素,用val返回,成功返回1,失敗返回0

int Gettop(pStack ps1,int *pVal)

{

if(Isempty(ps1))

return 0;

else

{

*pVal=ps1->pTop->data;

return 1;

}

}

//從棧頂遍歷到棧底

void Traverse(pStack ps1)

{

pNode p;

if(Isempty(ps1))

printf("棧為空!\n");

else

{

printf("從棧頂遍歷到棧底:");

for(p=ps1->pTop;p!=ps1->pBottom;p=p->next)

printf("%d ",p->data);

printf("\n");

}

}

總結

以上是生活随笔為你收集整理的c语言存储结构的实现,(C语言)栈的链式存储结构的实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产精品久草 | 欧美人与性动交xxⅹxx | 久久大尺度 | 国产一级二级三级在线观看 | 成人网在线看 | 久久人人爽人人爽人人av | 国语对白做受69按摩 | 女人扒开腿免费视频app | 日韩精品aaa| 欧洲精品久久久久毛片完整版 | 制服丝袜一区 | 国产高清无密码一区二区三区 | 91丝袜国产在线观看 | 国产毛片欧美毛片久久久 | 激情国产一区 | 桃花色综合影院 | 无码精品视频一区二区三区 | 成熟妇人a片免费看网站 | 91国模少妇一区二区三区 | 午夜视频福利网站 | 黄黄视频在线观看 | 免费一级淫片aaa片毛片a级 | 可以免费看av的网址 | 在线不卡欧美 | 第一福利在线视频 | 国产制服在线 | 操亚洲女人 | 欧美黑人一区二区 | 中文字幕天堂在线 | 777久久久精品一区二区三区 | 成人在线视频一区二区三区 | 一区二区三区免费视频观看 | 日韩字幕在线 | 久久久噜噜噜www成人 | 国产乱妇4p交换乱免费视频 | 懂色av蜜臀av粉嫩av | 国产精品久久99 | h片在线看 | 国产又黄又粗又长 | 成人免费看片39 | 日日干狠狠干 | 成年人三级网站 | 亚欧在线免费观看 | 1024在线视频 | 欧美在线激情 | 亚洲第一成网站 | 少妇精品亚洲一区二区成人 | 国产乱色精品成人免费视频 | 色综综| 人妻体内射精一区二区 | 亚洲欧洲色图 | 无码一区二区波多野结衣播放搜索 | eeuss鲁片一区二区三区在线观看 | av观看一区| 成人夜夜 | 欧美乱轮视频 | 免费99视频 | 日日操夜夜爽 | 午夜成年视频 | 天天干天天插天天射 | 天堂网视频在线观看 | 激情欧美一区二区三区 | 日本中文在线视频 | 亚洲三级理论 | 波多野结衣在线观看一区 | 欧美在线va| 亚洲国产aⅴ成人精品无吗 日韩乱论 | 蜜桃香蕉视频 | av无码一区二区三区 | 美女中文字幕 | 中文字幕在线观看网址 | 国产精品自拍偷拍 | 无码专区久久综合久中文字幕 | 稀缺小u女呦精品呦 | 国产一区在线视频 | 成人欧美在线视频 | 二区在线播放 | 日日摸日日 | 青青青视频免费观看 | 古装做爰无遮挡三级 | 美女黄免费 | 欧美激情视频网址 | 亚洲视频在线一区 | wwwwww国产| 色哟哟在线视频 | 少妇xxx | 一级高清毛片 | 成人日韩欧美 | 二区中文字幕 | 色综合99久久久无码国产精品 | 男人免费视频 | 在线视频观看免费 | 做爰视频毛片视频 | 成人91看片| 影音先锋二区 | 国产精品视频一 | 亚洲aa在线观看 | 男女激情实录 | 91精品久久久久久久久中文字幕 |