91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

問題描述 表達式中可能出現花括號{}、方括號[]、園括號(),從鍵盤輸入一個表達式,檢查左右括號配對情況,并輸出結果。 例子:{[(…)(…)]…(…)}配對 而{[(…)(…)]…[(]…)}不配對 二、實驗目的 掌握棧的存儲與操作。 三、實驗內容及要求 1、構造棧的數據結構。 2、實現棧的創建、查找、遍歷、輸出、入棧、出棧等操作。

資源截圖

代碼片段和文件信息



#include
#include
#include
#define?stack_init_size?10
#define?stack_grow_size?5
#define?elemtype?char
#define?ok?1
#define?error?0
typedef?struct?{?/*建立一個棧的首結點*/
????elemtype?*?base;
????elemtype?*?top;
????int?stacksize;
}?spstack;
int?InitStack(spstack?*s)?{?/*建立空的棧并返回首地址*/
????s->base=((elemtype*)malloc(stack_init_size*sizeof(elemtype)));
????if?(!s->base)?return?error;
????s->top=s->base;
????s->stacksize=stack_init_size;
????return?ok;
}
int?StackEmpty(spstack?*s)?{?/*判斷棧是否為空*/
????if?(s->top==s->base)?return?ok;
????else?????????????????return?error;
}
int?Push(spstack?*selemtype?e)?{?/*往棧頂插入元素即進棧*/
????if?(s->top-s->base>=s->stacksize)?{?/*判斷是否棧滿*/
????????s->base=((elemtype*)realloc(s->base(s->stacksize+stack_grow_size)*sizeof(elemtype)));
????????if?(!s->base)?return?error;
????????s->stacksize+=stack_grow_size;
????????s->top=s->base+s->stacksize;
????}
????*s->top++=e;
????return?ok;
}
int?Pop(spstack?*selemtype?*e)?{?/*讓棧頂元素依次輸出即出棧*/
????if?(StackEmpty(s))?return?error;
????*e=*(--s->top);
????return?ok;
}
int?Comp

評論

共有 條評論