1樓:匿名使用者
int pop(seqstack *s,char *x)else
return 1;
}通常,top指的位置是待壓入的空結點,所以top == 0時,棧為空,top == maxsize時,棧滿,故應該修改初始化函式,建議蟹蓋如下:
seqstack *initstack(void)
2樓:匿名使用者
使用char *x的意義何在 為何不前後一致 使用char x
c語言關於進出棧的問題,下面幾道題,望請解答,謝謝高人。
3樓:匿名使用者
第一個 選b
a錯了是因為e3先出棧 e1和e2一定在棧裡 e2在e1前面 所以不可能先出e1後出e2
c錯了 原因同上
第二個 選b
現在棧裡有abcd 那出棧的順序一定是dcba 只要把e往裡插就行
希望能幫助你掌握好這個規則 其實知道原理挺簡單的 多想想所有情況就行
4樓:匿名使用者
第一題,
選 b。
a錯,因為 e3 先出棧的話,e1 不可能在 e2 之前出棧。
b對,e1,e2進棧,e2出棧,e3,e4進棧,然後依次出棧即可。
c錯,理由和a項一樣。
d明顯錯。
第二題,選 b。
a錯,a不可能先於b出棧,b不可能先於c出棧,c不可能先於d出棧。
b對,dcb出棧,e入棧,然後依次出棧即可。
c錯,b不可能先於c出棧。
d錯,c不可能先於d出棧,a不可能先於b出棧。
5樓:蝶兒忙
棧是先進後出的
所以進棧序列為e1,e2,e3,e4
e1 必定是最後出棧的
選b依次存放元素a、b、c、d
e是不用看的
同樣a是最後出棧的 最後第二個出棧的是b
所以選 b
6樓:
棧是先進後出,
第一題選b,先e1,e2進,然後e2出,然後e3,e4進,最後e4,e3,e1出棧
同理:第二題選b
c語言中的棧是指什麼啊,C語言中的棧堆是什麼?
是一種資料結構.這種結構的存取原則相當於取放盤子的過程,放的時候將盤子一個一個堆起來放,取的時候先取原先最後放入的一個,然後依次類推.即後進先出的原則.棧有順序 陣列等 和鏈式 連結串列 兩種儲存結構,它的邏輯結構實質是線性表中的一種,只是這種線性表只允許在其中一端進行存取操作.更為詳細的解釋請參考...
c語言中記憶體堆和棧的區別,C語言中記憶體堆和棧的區別
給你寫個小例子說明吧,一個小函式 void testfunction 上面函式中,變數a的記憶體就在棧中,a的生命周專 期只在大括號內屬,出了testfunction的大括號這塊棧空間就被釋放了。而上面函式通過呼叫malloc函式給pa分配了3 sizeof int 個位元組長度的記憶體,這段記憶體...
關於c語言問題,關於C語言的問題。
include int main 網上到處都是資料,你多查點資料在寫程式可以麼。標頭檔案都寫錯了。你這 想表達什麼。c語言中關於agrc和agrv 的問題 用命令列開啟到你的 exe檔案的目錄,exe就是你的。c檔案編譯後生成的可執行檔案,然後在該目錄下直接執行,比如編譯後生成的是 你就直接 hel...