第二次作業 編程題 PAT 1001A+B Format


Github的object-oriented倉庫:1001.A+BFormat(20)

1、解題的思路過程

  • 在之前學習C語言時曾經碰到過類似的將數字轉換成字符輸出的情況,這道題目要求輸出的數字每三個間增加一個逗號,我就想到將每一位上的數字都轉換成字符,並在每輸出三個字符后輸出一個逗號。

  • 計算了一下最大是7位數加上兩個逗號是九位,於是我開了s[10]。一開始我寫了一個判斷,將和為負數的都轉換成正數並用了變量k做了記錄方便為s[10]賦值和之后的輸出。

  • 用一個循環語句給數組s[10]賦值,因為平時練習不夠,對代碼編寫也不夠熟練,這段循環語句經過不斷的調試並配合上網查找資料才編寫完成。

  • 在編寫輸出程序時,考慮到第一個逗號也會輸出,於是用 s[i-1]==','這個語句解決了問題。

  • 又考慮到a b之和為0的情況,於是我又加上了一個判斷語句。(這里發現我的思維嚴密性實在不夠,在平時敲代碼中也經常漏考慮情況)以上就是我編寫這道題的完整思路。

2、編碼過程中調試與上線測試(提交代碼)后的bug發現與修改過程

  • 在調試過程中我發現在某些情況中數的最前面會多輸出一個逗號,這個bug我將for循環語句修改為 for(i-=1+(s[i-1]==',');i>=0;i--) 來解決。

  • 在線上提交過程中結果還是顯示有一個點錯誤,看我的代碼可是一直沒有發現bug在哪。問了同學,才知道是我在考慮a b之和時沒有考慮為0的情況,在a b和為0時是沒有輸出的。然后我在添加了0的情況再提交終於顯示了答案正確,就因為這個bug我前后花費了兩個小時的時間,真的覺得自己太粗心了。

3、PAT上的提交記錄列表截圖


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



第二次作業之編程題 第二次作業之編程題(未完待續) 第二次作業 題3.3 第二次作業-結對編程 結對編程第二次作業 個人第二次作業 我的第二次作業 第二次作業1 第二次的作業 第二次個人作業
 
粤ICP备14056181号  © 2014-2020 ITdaan.com