算術表示式有字首表示法、中綴表示法和字尾表示法等形式。日常使用的算術表示式是採用中綴表示法,即二元運算子位於兩個運算數中間。請設計程式將中綴表示式轉換為字尾表示式。
輸入在一行中給出不含空格的中綴表示式,可包含+
、-
、*
、\
以及左右括號()
,表示式不超過20個字元。
在一行中輸出轉換後的字尾表示式,要求不同物件(運算數、運算符號)之間以空格分隔,但結尾不得有多餘空格。
2+3*(7-4)+8/4
2 3 7 4 - * + 8 4 / +
#include #include #include #include using namespace std;
mappriority = ,,,,};
vectortrans(string m_exp) ) : "";
while (i + 1 < m_exp.length() && operators.find(m_exp[i+1]) == string::npos)
p_exp.push_back(str);
} else );
else if (m_exp[i] == ')') );
stk.pop();
}stk.pop(); //彈出左括號
}else ); //若當前操作符優先順序低於棧頂,彈出棧頂,放到字尾式中
stk.pop();
}stk.push(); //將當前操作符入棧
} }
} while (!stk.empty()) );
stk.pop();
} return p_exp;
}int main()
PTA 資料結構與演算法 7 20 表示式轉換
如有不對,不吝賜教 進入正題 算術表示式有字首表示法 中綴表示法和字尾表示法等形式。日常使用的算術表示式是採用中綴表示法,即二元運算子位於兩個運算數中間。請設計程式將中綴表示式轉換為字尾表示式。輸入格式 輸入在一行中給出不含空格的中綴表示式,可包含 以及左右括號 表示式不超過20個字元。輸出格式 在...
7 20 表示式轉換 25分
算術表示式有字首表示法 中綴表示法和字尾表示法等形式。日常使用的算術表示式是採用中綴表示法,即二元運算子位於兩個運算數中間。請設計程式將中綴表示式轉換為字尾表示式。輸入格式 輸入在一行中給出不含空格的中綴表示式,可包含 以及左右括號 表示式不超過20個字元。輸出格式 在一行中輸出轉換後的字尾表示式,...
表示式轉換 中綴表示式轉換為字尾表示式
算術表示式有字首表示法 中綴表示法和字尾表示法等形式。日常使用的算術表示式是採用中綴表示法,即二元運算子位於兩個運算數中間。請設計程式將中綴表示式轉換為字尾表示式。輸入格式 輸入在一行中給出不含空格的中綴表示式,可包含 以及左右括號 表示式不超過20個字元。輸出格式 在一行中輸出轉換後的字尾表示式,...