7 1 括號匹配 25分

2021-10-02 04:46:15 字數 790 閱讀 3969

給定一串字元,不超過100個字元,可能包括括號、數字、字母、標點符號、空格,程式設計檢查這一串字元中的( ) ,[ ],是否匹配。

輸入格式:

輸入在一行中給出一行字串,不超過100個字元,可能包括括號、數字、字母、標點符號、空格。

如果括號配對,輸出yes,否則輸出no。

sin(10+20)

yesno

利用堆疊,遇到左符號壓棧,遇到右符號則檢查棧頂。若棧為空,或棧頂符號不匹配(棧頂必須是對應的左符號,也不能是其他右符號),則說明失配。最後還要檢查一下棧是否為空,若棧不空則說明存在左符號失配,結果也不匹配。

#include

#include

intmain()

else

if(string[i]

==')'

||string[i]

==']'

||string[i]

=='}')'

&&stack[top]=='

else

break;}

}//flag==1說明右符號均匹配成功

int flag;

if(iflag=0;

else

flag=1;

//top==-1,最後棧空,則說明左符號均匹配成功

if(flag&&top==-1

)printf

("yes\n");

else

printf

("no\n");

return0;

}

7 1 實驗9 1 括號匹配 100分

任意給定乙個字串,字串中包含除了空格 換行符之外的任意字元。你的任務是檢測字串中的小括號是否配對,即 與 是否配對。如字串 a b c d 中小括號是配對的,而 a b c d 則不配對。程式執行效果 sample 1 a b c d parentheses match sample 2 a b c...

7 1 實驗9 1 括號匹配 100分

7 1 實驗9 1 括號匹配 100分 任意給定乙個字串,字串中包含除了空格 換行符之外的任意字元。你的任務是檢測字串中的小括號是否配對,即 與 是否配對。如字串 a b c d 中小括號是配對的,而 a b c d 則不配對。程式執行效果 sample 1 a b c d parentheses ...

7 1 括號匹配檢測

給出一串包含 和 的字串,字串在以下三種情況下為合法的 1 字串為空 2 如果a和b都是合法的,那麼ab也是合法的 3 如果a是合法的,那麼 a 和 a 也是合法的。試判斷輸入的字串是否合法。輸入格式 輸入包括一串由若干個 或 組成的字串,字串長度不超過100。輸出格式 如果該字串合法,輸出 yes...