#11600: 折磨人的題目 評估問題點 改寫成功ac 做個紀錄.


zzxxxcccc (node)

學校 : 明新科技大學
編號 : 62118
來源 : [1.34.231.24]
最後登入時間 :
2022-03-20 17:01:10
a017. 五則運算 | From: [36.226.228.44] | 發表日期 : 2016-12-11 08:57

1. unsigned int 用sizeof( unsigned int) 顯示是4 所以應該有2^32 -1的空間可用 可是結果會WA

改成long long int 解決 siezof(long long int )為8

 

2. 讀取使用scanf( "%c",&inputString[ i ] )  在使用判斷是否讀到'\n"  ( ENTER )判斷是否讀完

非預期的會顯示 RE 記憶體區段錯誤   或許讀不到 '\n' ?    

使用if ( 輸入字元有99個的時候) 退出進行運算 成功跳過RE  

( 補充:測試執行   會RE

    解題 的時候不會 )

 

3. 讀取字元轉數字清單 原採用ascii是數字區段 開始讀取並轉換 再來是用while判斷讀到 ascii 32 ( space ) 結束轉換

可是輸出答案錯誤  while判斷讀取 space結尾 改成 非數字區段結束轉換 才成功顯示答案

( 補充:測試執行   會WA 答案應該為14 卻是 17

    解題 的時候不會 )

 

4.以前寫過五則運算 運算元與運算子之間不空格可處理的程式碼 在這邊ac沒問題 做足所有精確判斷 應該可以逃掉所有意料之外的輸入異常的結果

 

結論:

相同的程式碼意料之外 在"解題" "測試執行" 底下有不同的結果

對於像我這種 會先用 "測試執行" 跑到AC 才敢測 "解題" 的人

會浪費大筆時間解BUG.(依然不確定 測試執行  與 解題 輸入程式內容值的差異)

 

 

 

 

 

 
ZeroJudge Forum