C語言I博客作業08


1.作業頭

這個作業屬於哪個課程 https://edu.cnblogs.com/campus/zswxy/SE2020-2
這個作業要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2020-2/homework/11627
這個作業的目標 對PTA的作業進行一個歸納總結,了解自己的代碼和同學的代碼差異,並進行比較學習,對這一周的學習進行一個總結。
學號 20209123

一、本周教學內容&目標

第4章 循環結構 4.3熟悉break、continue的使用 4.4 熟悉使用循環的嵌套解決問題。

二、本周作業

1.PTA實驗作業

2.代碼互評

3.學習總結

三、作業格式

1.PTA實驗作業(20分/題)

請再此處列出自己的排名圖片:

從PTA題目集中選出2個你最滿意的題目完成以下內容,選擇題目難度越大,分值越高,每題20分(每項5分),內容要求如下:

1.1 題目名1:一錢生多錢

題目內容描述:在日常生活中,我們常常需要將一些大額的人民幣換算成零錢,已知我們有許多面值5元,2元和1元的人民幣。
編程實現:輸入我們需要兌換的金錢數,然后我們用這些面值5元,2元和1元的人民幣來兌換,要求每一種面值都至少有1張,然后輸出有多少種兌換方式。

1.1.1數據處理

介紹實現本題過程中,你的數據表達、數據處理是怎么做的。注意:請務必按照以下方式書寫。
數據表達:用了five,two,one,money變量,這些變量的值是:five=五元數量,two=兩元數量,one=一元數量,類型是:int型。
數據處理:數據用到的表達式:5*five+2*two+1*one==money,流程結構:嵌套循環,for循環,if語句選擇。

1.1.2實驗代碼截圖

貼圖展示代碼,不要復制。請給出名字標識。

1.1.3 造測試數據

輸出你的程序面向各種測試數據結果,除了題目給出的測試數據,可以自己再造其他臨界數據,越多越好,並加上必要說明
輸入數據 輸出數據 說明
1 無數據 待換的零錢數額應大於等於8小於等於100
8 five=1,two=1,one=1 僅有一種兌換的方法
10 five=1,two=1,one=3
five=1,two=2,one=1
有兩種兌換的方法
11 five=1,two=1,one=5
five=1,two=2,one=3
five=1,two=3,one=1
有三種兌換的方法
13 five=1,two=1,one=6
five=1,two=2,one=4
five=1,two=3,one=2
five=2,two=1,one=1
有四種兌換的方法

1.1.4 PTA提交列表及說明

根據PTA提交列表,簡要描述調試程序碰到的問題及解決辦法。

提交列表說明:

1.編譯錯誤:第一次編譯錯誤是不知道怎么去寫,嘗試着的去寫了一下,問題有很多,根據編譯輸出器我進行了一些改編。
2.編譯錯誤:在if后面打了一個分號,編譯無法輸出,編譯錯誤。
3.編譯錯誤:這次的編譯錯誤我不知道錯在哪里了,我就直接把代碼個刪了,重新打了一次代碼。
4.編譯錯誤:在佛瑞循環里面,有一個分號我改成了一個逗號。

注意必須寫明每個錯誤點,你是怎么解決的。此項沒寫好,本題0分。

1.2 題目名2:打印九九口訣表

題目內容描述:下面是一個完整的下三角九九口訣表:

1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
本題要求對任意給定的一位正整數N,輸出從11到NN的部分口訣表。

1.2.1數據處理

介紹實現本題過程中,你的數據表達、數據處理是怎么做的。注意:請務必按照以下方式書寫。
數據表達:用了N,i,j,變量,這些變量的值是:N是輸入在一行中給出一個正整數,i和j是因數,類型是:整型。
數據處理:數據用到的表達式:j=1;j<=N;j++,j=1;j<=N;j++流程結構:嵌套循環,for循環。

1.2.2實驗代碼截圖

貼圖展示代碼,不要復制。請給出名字標識。

1.2.3 造測試數據

輸出你的程序面向各種測試數據結果,除了題目給出的測試數據,可以自己再造其他臨界數據,越多越好,並加上必要說明
輸入數據 輸出數據 說明
1 1*1=1 1行1列
3 1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
3行3列
5 1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
5行5列
7 1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
7行7列
9 1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
9行9列

1.2.4 PTA提交列表及說明

根據PTA提交列表,簡要描述調試程序碰到的問題及解決辦法。

提交列表說明:

1.答案錯誤:一次是憑感覺自己寫的,我也不知道答案錯誤錯在哪了,然后,我把代碼刪除重新打的一次代碼。
2.答案錯誤:輸出后結果為0*1開始的,將他放dev c++進行調試,將i,改成了i=0.
3.答案錯誤:發現編譯運行后還是同樣的錯誤,重新調試了一下,將j,改成了j=1。
4.編譯錯誤:將在dev c++中打出的正確代碼復制粘貼到PTA提交,return 0;后面的}沒有寫上。

注意必須寫明每個錯誤點,你是怎么解決的。此項沒寫好,本題0分。

2.代碼互評(5分)

找2份同學代碼,和自己代碼比較,建議互評代碼盡量找代碼風格差異較大。

同學代碼截圖

自己代碼截圖


1.我的代碼明顯比同學的代碼要簡單些,同學的代碼比我的代碼復雜些。
2.我的代碼沒有調用數學函數,但是同學代碼調用了數學函數。
3.同學代碼運用了for循環,while循環,if-else選擇;而我的代碼只用了for循環,if-else選擇。
4.我的代碼是總寫,而同學代碼是分開了,而且有取余,我的代碼沒有取余。

同學代碼截圖

自己代碼截圖


1.同學的代碼明顯的比我的代碼要復雜些,同學的代碼有去調用其他的東西,但是,我沒有去調用其他的東西。
2.同學的代碼運用了數組,但是我的代碼沒有去運用數組。
3.同學代碼用的for循環,我的代碼用的while循環。
4.同學代碼多次用到了選擇結構if。

3.學習總結(15分)

3.1 學習進度條(5分)

周/日期 這周所花的時間 代碼行 學到的知識點簡介 目前比較迷惑的問題
10/18-10/24 16小時 110行 打印holle world和其變形
10/25-10/31 10小時 320行 選擇結構,求華攝溫度 一些表達式的運用
11/1-11/7 15小時 450行 循環結構 流程結構的順序
11/8-11/14 17小時 465行 函數的定義和調用,生成乘方表與階乘表 怎么定義函數,完整代碼的格式與順序問題
11/15-11/21 18小時 472行 if-else型結構,多分支結構,字符型數據類型和邏輯運算符 字符型數據類型和運算符的優先級
11/22-11/18 19小時 473行 switch語句,多分支結構的使用 switch語句case后面需要寫的內容
11/29-12/5 18小時 478行 熟悉使用while和do-while結構解決問題 while語句里面的循環體還有一點不太會寫
12/6-12/12 10小時 329行 鞏固前面學習的知識點 do-while循環還是有一些不會
12/13-12/20 16小時 408行 學習break、continue的使用,學習使用循環的嵌套解決問題 對於嵌套解決問題還是有些不會

3.2 累積代碼行和博客字數(5分)

3.3 學習內容總結和感悟(5分)

3.3.1 學習內容總結


3.3.2 學習體會

請回顧自己的本周的學習過程,描述學習感受,也可以提出你不理解的地方、對教師教學建議等。如果你有新的想法或者新的方法,請及時記錄下來。

1.這是兩周來寫的一次作業,我學習到了更多的新內容與知識,感到十分的開心。例如:我學習break、continue的使用,學習使用循環的嵌套解決問題,同時,我也對C語言有了更加深刻的了解,在C語言這門課中,我感覺到了我對軟件工程這門專業更加深刻的了解。
2.在學習的過程中,我依舊會產生很多的問題,而且有些的問題我還是不太會。尤其是這次PTA,他讓我寫了很久。感覺對代碼的編寫還是真的是比較生疏的,可見,我還是有很多的問題的。
3.細節決定成敗,在打代碼的時候一定要注意細節,不然會因為一個小細節問題,而導致代碼編譯錯誤。要深刻記得中英符號的區別,還有分號一定不要漏寫。
4.對於寫代碼,我們還是要多加的練習,正所謂熟能生巧。去多多的寫一些題目。
5.還是那句話,不懂的題目一定要去找資料,去問同學,去把不懂的題目給搞懂。不然,不會的題目堆積,就更加的不會。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM