四、PTA指針實驗報告
四、PTA實驗作業(指針)
題目一:
1.本題PTA提交列表:
2.設計思路(包括流程圖),主要描述題目算法
//設計思路,由題目可知
1.由於這道題不知道具體要輸入數據,所以采用calloc來按要求進行分配內存
2用for()循環來輸入數據,斌且進行數據的求和,在內層循環中再通過一一比較,就可以求出數據的最大最小值
3.最後釋放不用的內存
4.輸出平均值,最大值,最小值
最終的代碼如下:
流程圖如下:
3.本題調試過程碰到的問題及PTA提交的情況說明(**註意:調試過程必須截圖說明如何調試,如何解決問題,PTA提交的列表中的每一個錯誤詳細說明為什麽及如何解決)
本題剛開始在內存分配上遇到了問題,原先是采用數組進行內存分配,但後來發現具體要輸入的數據多少並不知道,所以就改用了calloc來根據所需要的大小來分配內存,可以有效的分配內存,並且可以節省空間
題目二:
1.本題PTA提交列表:
2.設計思路(包括流程圖),主要描述題目算法
//由題目,設計思路如下
1.因為主函數已經知道,所知在子函數中,只能需要再求出s的長度和利用主函數所傳遞的值
2.同過while來求字符串s的長度,並把t中的字符一次移動到字符串s中即可
3.最後在s後面需要加上字符串結束符\0
最終的代碼如下:
3.本題調試過程碰到的問題及PTA提交的情況說明(**註意:調試過程必須截圖說明如何調試,如何解決問題,PTA提交的列表中的每一個錯誤詳細說明為什麽及如何解決)
本題調試沒有問題,一開始用strlen()求長度,但後來又改了
題目三:
1.本題PTA提交列表:
2.設計思路(包括流程圖),主要描述題目算法
//由題目,設計思路如下
1.主函數輸入數據,並且調用子函數,把n傳遞給子函數
2.子函數用switch對n進行判斷,滿足條件就返回相應的月份
3.不滿足就返回NULL
整道題的完整代碼如下:
流程如下:
二、同學代碼互評
題目:
1.我的代碼
2.同學:刑宇凡
同學的代碼
3.我和同學的代碼有哪些不同?各自有哪些優勢?你更喜歡那種代碼的風格?
同學用的是字符串函數連接,而我用的是whilen循環進行連接,同學的方法較簡單。雖說我的方法有些復雜,但我還是習慣著這種方法,剛開始學多用著中方法有利於理解字符串函數的原理
三、截圖本周題目集的PTA最後排名
四、本周學習總結
1.本周你學會了什麽?
1.本周學會了指針的一些的基本概念,以及指針的數組的一些應用,和指針參數等
2.本周的內容,還有那些內容不會?
對於指針參數還有一些不是很理解,執政數組的綜合運用時,思路總是有些混亂
四、PTA指針實驗報告