這個作業屬於哪個課程 | C語言程序設計II |
---|---|
這個作業要求在哪里 | C語言I博客作業08 |
我在這個課程的目標是 | 熟悉代碼的編程,設計出一個小程序,能夠正常運行並且能夠擁有一定用戶 |
這個作業在哪個地方具體方面幫助我實現目標 | 熟悉使用while和do-while結構解決問題 |
參考文獻 | C語言課本 百度百科 |
1.PTA實驗作業
1.題目名(韓信點兵)
對於給定的正整數N,求它的位數及其各位數字之和。
輸入格式:
輸入在一行中給出一個不超過10
9
的正整數N。
輸出格式:
在一行中輸出N的位數及其各位數字之和,中間用一個空格隔開。
1.1.1數據處理
數據表達:使用了整形變量:n, digits, count
數據處理:使用了scanf.printf.while語句, 使用的表達式有count+=n%10, n/=10, digits++
偽代碼:
定義變量 n, digits=0, count=0.
while(n!=0) 使用while語句,當n不等於0時進行下面的循環
count+=n%10 取余
n/=10
digits++ 累加位數
輸出 位數和各位數之和
1.1.2實驗截圖代碼
1.1.3造測試數據
輸入數據 | 輸出數據 | 說明 |
---|---|---|
321 | 3 6 | 有3位,各位數之和為6 |
124 | 3 7 | 有3位,各位數之和為7 |
1256 | 4 14 | 有4位,各位數之和為14 |
12345 | 5 15 | 有5位,各位數之和為15 |
1.1.4 PTA提交列表及說明
說明:
Q1:編譯錯誤
A1:不小心使用了中文字符
1.2題目名(爬動的蠕蟲)
一條蠕蟲長1寸,在一口深為N寸的井的底部。已知蠕蟲每1分鍾可以向上爬U寸,但必須休息1分鍾才能接着往上爬。在休息的過程中,蠕蟲又下滑了D寸。就這樣,上爬和下滑重復進行。請問,蠕蟲需要多長時間才能爬出井?
這里要求不足1分鍾按1分鍾計,並且假定只要在某次上爬過程中蠕蟲的頭部到達了井的頂部,那么蠕蟲就完成任務了。初始時,蠕蟲是趴在井底的(即高度為0)。
輸入格式:
輸入在一行中順序給出3個正整數N、U、D,其中D<U,N不超過100。
輸出格式:
在一行中輸出蠕蟲爬出井的時間,以分鍾為單位。
1.2.1數據處理
數據表達:用到了整形變量:N,U,D,time
數據處理:用到了scanf. printf. while.break語句,用到了表達式:H+=U, H-=D
偽代碼:
定義變量 N,U,D,time=0, H=0
while(1)
H+=U (蠕蟲上爬增加高度)
累計時間
如果蠕蟲爬的距離大於等於井深,跳出循環
H-=D (蠕蟲休息,高度下滑)
累計時間
輸出時間
1.2.2實驗截圖代碼
1.2.3造測試數據
輸入數據 | 輸出數據 | 說明 |
---|---|---|
13 2 1 | 23 | 蠕蟲爬出井的時間為23分鍾 |
12 3 2 | 19 | 蠕蟲爬出井的時間為19分鍾 |
15 3 1 | 13 | 蠕蟲爬出井的時間為13分鍾 |
9 2 1 | 15 | 蠕蟲爬出井的時間為15分鍾 |
1.2.4PTA提交列表及說明
說明:Q1:編譯錯誤
A1:將代碼重寫勒一遍,排除是否出現了中文字符的問題
Q2:部分正確
A2:將最開始寫的while(N<1)改成了while(1)
2代碼互評
1.同學代碼截圖 (吳佳柳)
2.自己代碼截圖
說明:1:他用的長整形定義變量,而我用到的是整形變量
2:他用的do- while語句,而我用的while 語句
3.同學代碼截圖 (吳佳柳)
4.自己代碼截圖
說明:他用的是do- while語句,而我用的是while 語句
3.學習總結
3.1學習進度條
周/日期 | 這周所花的時間 | 代碼行 | 學到的知識簡介 | 目前比較迷惑的問題 |
---|---|---|---|---|
4/2019.9.21 | 7個小時 | 50 | 編程“hello word” | 初次接觸對代碼很迷惘,不知道表示的是什么意思 |
5/2019.10.2 | 8個小時 | 100 | 安裝gcc編譯器,將代碼建在自己的文件里 | 如何安裝的程序不明白 |
7/2019.10.11 | 10個小時 | 200 | 三種表達式,printf流程和scanf流程,if-else語句 | scanf流程還是不太明白 |
8/2019.10.17 | 20個小時 | 350 | 使用for循環語句數的循環程序設計 | for循環語句的結構還是有點困惑 |
9/2019.10.25 | 25個小時 | 550 | 使用while語句循環,自定義函數,參數 | 自定義函數還是·不太明白 |
10/2019.11.1 | 20個小時 | 700 | 熟悉多分支結構、字符型數據類型和邏輯運算符 | 關於字符型的代碼還是不太明白 |
11/2019.11.7 | 15個小時 | 1000 | 熟悉多分支結構switch語句的使用 | 對swith語句的使用還有一定的困惑 |
12/2019.11.15 | 14個小時 | 1200 | 熟悉使用while和do-while結構解決問題 | 對while語句的使用還有一定的疑惑 |
3.2 累積代碼行和博客字數
3.3 學習內容總結和感悟
3.3.1 學習內容總結
請用思維導圖的形式將到目前為止所學的內容進行整理
3.3.2學習體會
這周主要學習了while語句和do-while語句,知道了其該如何在循環中使用,但還是存在一定問題,難一點的題目就不能夠靈活運用,這次寫代碼明顯感覺到難度越來越大,這次寫的非常吃力,作業寫的很慢 。我還有很大的進步的空間,我還要加倍努力,代碼的挑戰越來越大,我就要越來越努力,在空閑時間還要自學,弄懂有疑惑的地方