1. 程式人生 > >PTA甲級1001 專給小白的講解

PTA甲級1001 專給小白的講解

PTA甲級 1001 A+B Format,小白視角看程式碼

寫在正文前:最近決定佛系刷PTA題,因為個人進度比較慢,因此對每個題講解只圖一個字——懂!最好能讓和我一樣小白的人都讀懂,佛系更文俗話說,欲速則不達!因此,對每個題,我都會查閱各個資料,徹底弄懂後,來更文,希望能幫助和我一樣,在程式設計路上迷茫的人兒 #貼圖: 這裡插入圖片描述 全英文!沒錯,不要懷疑,這也是我第一眼看到PTA甲級題目驚訝程度,不要害怕,單詞還挺簡單看起來不難的!

說明題意:

實現a+b,將結果類似於手機計算器上的標準化輸出——從最後三位開始,每三位用“,”進行分隔!重點這裡a,b範圍是-1000000~1000000 輸入格式:a空格b 輸出格式:結果(已經標準化後)

思路分析:

  • a,b輸入,然後正常求和(so easy)
  • 關鍵對結果的轉化,因為要加“,”,可以全部轉化成字串型別,向里加位元組型“,”比較容易(the most difficult)
  • 逐位對字串進行輸出,考慮負數情況(a little difficult)

具體實現:

二話不說先上圖,事後分析 在這裡插入圖片描述 啥?不懂?沒關係,上圖只是給大神看的,我們“肢解”一下下

細節講解:

1.輸入:此處省略兩行code.I believe 你都懂! 2.整型轉換字串型:

  • 首先定義一個字串型別變數s,
  • 呼叫函式itos(int to string)
  • itos這個函式:
  • 在這裡插入圖片描述 介紹一下新接觸的標頭檔案:<sstream>
    字串流,這裡用到最基礎的功能,int轉string型別,首先定義一個stringstream型別的變數s,將int型變數sum,輸入流,輸出轉換後的字串,返回到主函式。

3.輸出結果,主要用for迴圈一位位輸出: 在這裡插入圖片描述 第一行考慮了負數的輸出符號,這部分參考了網上大神的輸出,筆者在紙上驗算了一下下,正確極了,感謝這位大神,確實很厲害!思路很好!

至此我的第一篇部落格算是寫完了,歡迎批評指教,各位大神不喜勿噴,畢竟大家都從零開始過!筆芯❤!