1樓:匿名使用者
請輸入字串: love love
evol evol
press any key to continue#include
#include
#define n 100
typedef char sdatatype;
typedef struct stack stack;
stack *initstack()
ps->top = -1;
return ps;
}int isfull(stack *s)int push(stack *s,sdatatype x)int isempty(stack *s)int pop(stack *s, sdatatype *x)int main()
while(isempty(ms) == 0)printf("\n");
free(ms);
return 0;}
2樓:匿名使用者
入棧出棧函式有誤,按照你的例子,將「abcdefg」依次入棧,那你的datatype 的型別應該是字元,**如下:
#include
#include
#define max_num 100
struct
s;void push(char x)
else
}void pop (char *x)
else
}main()
char p1;
dowhile(p1 != '\0');}
3樓:匿名使用者
棧這種資料結構,可用通過一個結構體封裝,也可以不用。
push這個函式可以直接用。
下面按照你說的給一個例子,就用你給出的這段**,將這段**儲存可以直接編譯執行:
#include
#include
#define n 100
struct
s;void push(char x)
}void pop (char *x)
}int main()
;char x;
int i;
s.top = 0;
for(i = 0; i < (sizeof(str)/sizeof(char)); ++i)
putchar('\n');
for(i = 0; i < strlen(str); ++i)putchar('\n');
return 0;}
順序表逆置的演算法思想和演算法實現是什麼
試寫一演算法,實現順序表的就地逆置。即利用原表的儲存空間將線性表 a1,a2,an 逆置為 an,an 1,a1 實現專下列屬函式 void inverse sqlist l 順序表型別定義如下 typedef struct sqlist void inverse sqlist l typedef ...
棧的順序儲存空間s 1 m 是什麼意思
根據題意,棧空間如圖所示 也就是說,棧是向上增長的,每次壓入一個元素,棧的top指標向上移動一位。當壓入第一個元素時,top指標指向m 1 1 m當壓入第二個元素時,top指標指向m 1 2 m 1.以此類推,當壓入第n個元素時,top指標指向m 1 n 20則n m 1 20 m 19選c。設棧的...
怎樣理解作業系統中“棧”的概念
1.因為方便,畢竟在棧中弄一塊資料只要給esp加點數字就行了,區域性變數不值錢。堆就麻煩多了。2.對。這是資料棧的一個內建實現。但是你對區域性變數的理解有誤區,區域性變數訪問靠的是ebp暫存器,如果你反彙編就會看到進入一個函式首先會 push ebp 儲存ebp mov ebp,esp 將ebp用來...