欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

c語言如何實現后綴表達式求值

錢諍諍2年前31瀏覽0評論

答 后綴表達式也叫逆波蘭表達式,是一種不含括號的運算符表達式。在計算機中,后綴表達式的求值比中綴表達式更方便,因為后綴表達式不需要括號來改變優先級,而且不需要考慮運算符的優先級和結合性。

本文將介紹如何使用c語言實現后綴表達式求值。

1. 后綴表達式求值的算法

后綴表達式求值的算法是使用棧來實現的,具體步驟如下

1) 從左到右掃描后綴表達式。

2) 如果遇到數字,就將數字入棧。

3) 如果遇到運算符,就從棧中取出相應的操作數,進行運算,然后將結果入棧。

4) ,棧中只剩下一個元素,即為后綴表達式的值。

2. c語言實現后綴表達式求值的代碼

下面是使用c語言實現后綴表達式求值的代碼

```cludecludeclude

e MX_STCK_SIZE 100

typedef struct {t data[MX_STCK_SIZE];t top;

} Stack;

if (s->top >= MX_STCK_SIZE) {tf");

exit(1);

}

s->data[++s->top] = x;

t pop(Stack s)

if (s->top< 0) {tfderflow");

exit(1);

} s->data[s->top--];

t is_operator(char ch)

{ ch == '+' || ch == '-' || ch == '' || ch == '/';

ttt op2)

switch (op) { op1 + op2; op1 - op2; op1 op2; op1 / op2; 0;

}

Stack s;

s.top = -1;

t[i] != '\0'; i++) {[i])) {[i] - '0');[i])) {t op2 = pop(&s);t op1 = pop(&s);t[i], op1, op2);

push(&s, result);

}

}

pop(&s);

tain()

{[] = "234+";t);tf", result); 0;

3. 后綴表達式求值的實例

以后綴表達式"23+4"為例,展示后綴表達式求值的過程

1) 讀取"2",將2入棧。

2) 讀取"3",將3入棧。

3) 讀取"+",從棧中取出3和2,計算2 + 3 = 5,將5入棧。

4) 讀取"4",將4入棧。

5) 讀取"",從棧中取出4和5,計算5 4 = 20,將20入棧。

6) ,棧中只剩下一個元素20,即為后綴表達式的值。

以上就是使用c語言實現后綴表達式求值的介紹,希望對大家有所幫助。