1樓:記住一座城
#define stack_size 160 //棧空間大小
#define flase 0
#define true 1
typedef int bool;
/**棧定義**/
typedef struct
stack;
void initializing(stack **s) //初始化棧為空
void destory(stack **s) //銷燬棧
void clear(stack *s) //清空棧
char gettop(stack *s) //取得棧頂元素
else
return '\0';
}bool isempty(stack *s) //判斷棧是否為空
void push(stack *s, char ch) //入棧
else
}char pop(stack *s) //出棧
else
}/****************************/
bool match(char *ch) //利用棧判斷括號是否匹配
i++; //其他符號繼續讀取
}if (s->top != -1) //若棧不為空,輸出不匹配個數,並返回假
else
i = true;
destory(&s); //銷燬單連結串列
return i;}
2樓:蟲蟲當家
我不精通c語言,但也從事程式設計。我不知道房東的語法錯誤。如果房東沒有一個語法錯誤,我可以幫你分析下一個問題。為了敘述方便,我用,而不是左括號)
遇到左括號,火被壓入堆疊(沒問題)。
時,遇到右括號? ? (這是關鍵)
不應該試圖彈出遇到右括號的的頂部元素(稱為退棧)。為什麼要嘗試?如果堆疊已經是空的,它不能被彈出!
此時比失敗。如果你可以彈出,然後彈出棧頂元素「看易拉罐元素,在右括號是不是一對,如果不是直接的匹配失敗,否則繼續迴圈。
房東是一個很好的瞭解未來應該可以解決這個問題。
3樓:匿名使用者
網上搜搜棧的**看看,應該是有不少的。改造一下
用C語言編寫「背單詞程式」,用C語言編寫如下程式?
董俊錕 include include include struct word 定義一個word的結構體,裡面的兩個成員分別放英語單詞和相應的漢語翻譯 int point 0 統計分數的 int count1 0 測試的次數 函式宣告,往詞庫中新增片語 函式宣告,輸出詞庫中所有的片語 函式宣告,輸入...
用c語言編寫簡單計算器程式,用c語言編寫一個簡單計算器程式
問明 include stdio h 計算器 voidmenu 自定義的選單介面 printf n printf 請輸入你的選擇 n printf 1 n printf 2 n printf 3 n printf 4 n printf n intmain inti 0 intj 0 intnum 0...
用C語言編寫類似計算器的程式,用C語言編寫一個類似計算器的程式
藍秀楓 note your choice is c ide include stdio.h include stdlib.h include ctype.h int n 0 char record 20 float product float change float muli return sum...