c語言資料結構高手請進,關於順序棧的基本操作問題

2022-12-18 23:26:29 字數 2591 閱讀 9656

1樓:

1. 想通過呼叫函式改變某個變數的值,必須傳遞這個變數的地址。也就是在initstack中申請的記憶體並沒有賦給main中的s變數,會導致後面的訪問出錯。改為引用就可以了:

void initstack(sqstack* &s)//初始化棧2.在"pop(s,e);", 這個e並沒有記憶體,導致"*e=s->data[s->top];"出錯。

需要給它申請記憶體:

elemtype *e = (elemtype*)malloc(sizeof(elemtype));

最後"free(e);"一下。

2樓:噔哩咯噔

#include

#include

using namespace std;

#include

typedef char elemtype;

typedef struct node

linkstack;

void initlinkstack (linkstack * & s)

int isemptylinkstack (linkstack *s)

int main()

return 0;}

3樓:匿名使用者

你這是敬告,沒錯呀,可以執行的

c語言資料結構 棧的基本操作問題

4樓:匿名使用者

void initstack(sqstack **s)//initstack

sqstack *s;

initstack(&s);

//錯誤分析:因為c對於引數都是拷貝傳遞。

所以要給指標賦值,只能只用指標的指標。

5樓:匿名使用者

/*initstack(), 申請空間

b = a

請按任意鍵繼續. . .

*/#include

#include

#include

#include

#define stack_init_size 100#define stackincrement 10#define overflow -1

typedef struct node sqstack;

sqstack *initstack()//initstackint gettop(sqstack s,char *e)//gettop

int push(sqstack *s,char e)*s->top++ = e;

return 1;

}//push

int pop(sqstack *s,char *e)//popint main()

關於c語言的順序棧的操作

6樓:雪獅天瑞

遇到什麼問題了?沒遇到問題就暫且用著唄

7樓:

這個棧演算法問題太多了。。。。

c語言問題:順序棧的基本操作 請幫我看看錯哪了 急!!

8樓:

sqstack *s;棧操作要是結構體指標,避免傳參時只傳形參。棧中的top和base可以不是指標。

修改後:

#include

#include

#define maxsize 50

typedef struct

*sqstack;

void push(sqstack s,int e)s->top=e;

s->top++;

}int gettop(sqstack s)}int main()

int ding;

ding=gettop(s);

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

return 0;}

9樓:匿名使用者

struct是值型別,s.top++出了scope就沒用了

資料結構(c語言)1.定義順序棧,完成棧的基本操作:建空棧、入棧、出棧、取棧頂元素。 20

10樓:匿名使用者

順序棧的操作c語言實現

希望可以幫到你,我就不貼上複製了,自己去看吧。

希望採納啊

資料結構中順序棧的問題?

11樓:匿名使用者

因為第一個在定義棧的時候就已經申請了max個空間了,所以使用的時候就不需要再申請空間了。

elemtype data[max]這一句就是申請空間的操作。

第二種都是指標,定義的時候沒有記憶體的,所以使用的時候就需要分配空間。

c語言資料結構中鏈棧的問題,C語言資料結構中鏈棧的問題

這個鏈棧應該bai就是一個du 用連結串列弄的後進先出的 zhi棧結構dao。top指標永遠指向棧的最上面的回那個節點。這個函式是新加一個節點到這個棧中,首先分配了空間給s,s是要新加入這個棧的那個節點。s next top 就是讓s指向棧的最上面的那個元素。top s 因為現在最上面的節點是s了,...

資料結構C語言版迷宮問題,資料結構C語言版迷宮問題

剛學都這樣,想當初我學習的時候連一個單連結串列的逆置,都要理解半天。程式設計就是把實際問題給抽象成數學或非數學模型,結合資料的表示,再找到解決的方法。別忘了,學習資料結構是為了更好的運算元據。思路 首先,迷宮如何用計算機語言表示?一般用二維陣列。0表示牆,1表示路。其次,其次就是如何從迷宮中走出來了...

C語言新手關於資料結構的問題

1全部 include include define list init size 100 define listincrement 10 typedef struct sqlist void initlist sq sqlist l void main 在你的程式上改了一下,這是我習慣的 格式,建...