這個題可以普通的用陣列進行求解,也可以像本文一樣採取中綴轉字尾的方式,然後再進行計算
主要注意的地方是:題目中的乘法用的是字母x,因為這個原因改了乙個晚上**,不知道這樣設定為什麼。
主要**如下:
#include #include using namespace std;
int transform(char a)
int main(void)
else
ch.push(a[i][j]);}}
else if (a[i][j] == '*' || a[i][j] == '/'||a[i][j] == 'x')
else if (r[p] == '-')
else if (r[p] == '*'||r[p]=='x')
else if (r[p] == '/')
else
// cout <
}jie = w.top();
//cout << "輸出結果" << jie << endl;
if (jie == 24)
else
}for (int m = 0; m < n; m++)
system("pause");
return 0;
}
執行結果為:
CSP認證201903 2 二十四點
這道題很簡單,就是乙個運算器的簡化版,只有10以內的數字,不包括括號和其他字元,字串長度為7,資料格式保證合法,幾乎所有的坑都提前規避了,作為第二道題算是很簡單的,資料範圍也很小,所以做起來就很順,我也就沒把其中的一些功能函式化,直接乙個main函式順下來的,所以可能一些 沒有那麼模組化,比較難看,...
201903 1 csp認證考試 二十四點
vector中的元素不可以重複覆蓋,但是陣列中的元素可以重複覆蓋。在程式設計的過程中,要周全的考慮各種情況。經過不斷的找bug終於得到了滿分 附上 include include include using namespace std int yesorno 100005 int nums 4 ch...
(二十)java小練習二
練習4 定義乙個整數陣列,編寫程式求出乙個陣列的基數和偶數個數 package demo 定義乙個整數陣列,編寫程式求出乙個陣列的基數和偶數個數 public class test11 for int i 0 i 偶數 if a i 2 0 else system.out.println 奇數個數是...