C語言I部落格作業07

2022-06-02 12:15:13 字數 4105 閱讀 3879

這個作業屬於哪個課程

這個作業要求在**

/homework/11585

這個作業的目標

《熟練while和do-while語句,學會打偽**》

學號<20209130>

第4章 迴圈結構 4.1-4.2 熟悉使用while和do-while結構解決問題。

1.pta實驗作業

2.**互評

3.學習總結

日本數學家古角靜夫研究自然數時,發現乙個有趣現象:「如果是個偶數就除2,如果是奇數就乘以3加1」,經過有限個這樣的處理步驟,最後一定能得到1. 任意輸入乙個自然數,給出得到結果1的運算過程。

1.1.1資料處理

資料表達:只用了n這乙個變數,它是整型變數,它的值由自然輸入得來。

資料處理:表示式:n=n/2; n=n*3+1;

流程結構:while迴圈結構,if-else分支結構。

begin

input 正整數n

while n不為1 then

if n可以整除2 then

output n和n/2

n←n/2

else then

output n和n*3+1

n←n*3+1

1.1.2實驗**截圖

1.1.3 造測試資料

輸入資料

輸出資料說明2

2/2=1

2為偶數

44/2=2,2/2=1

4為偶數

773+1=22,22/2=11,113+1=34,34/2=17,173+1=52,52/2=26,26/2=13,133+1=40,40/2=20,20/2=10,10/2=5,5*3+1=16,16/2=8,8/2=4,4/2=2,2/2=1

7為奇數

1.1.4 pta提交列表及說明

提交列表說明:

1.部分正確:未考慮變數為奇數的情況,發現後在if語句之後加上else否則的情況。

2.執行超時:迴圈的判斷條件搞錯,原本是n!=0打成了n==0了,之後改正。

3.執行超時:重新定義了乙個sum變數,把輸出的n/2代替,導致輸出答案不同,之後只用了n來輸入輸出。

4.編譯錯誤:上個錯誤改正時太急,忘記改語句中的其中乙個sum了,導致出現錯誤,之後換成n。

本題要求編寫程式,找出最高分。

1.2.1 資料處理

資料表達:用了x和y兩個變數,都是整型變數,y由自然輸入得來,x則隨y的輸入變化而變化。

資料處理:表示式:x=y;

流程結構:用了while迴圈結構和if分支結構。

begin

x←0input 正整數y

while y大於等於0 then

if x小於y then

x←y/

input 正整數y

/output 正整數x

1.2.2 實驗**截圖

1.2.3 造測試資料

輸入資料

輸出資料

說明50 60 95 66 -2

9595為最高分

85 67 33 89 -1

8989為最高分

99 58 67 24 -1

9999為最高分

1.2.4 pta提交列表及說明

提交列表說明:

1.執行超時:用x把y代替後沒有再次輸入y,之後在if語句之後加上輸入語句輸入y的值。

2.答案正確:答案雖然正確了,但我發現了乙個不對的地方,一開始沒有賦值給x,無從判斷x與y的大小,而答案正確是因為系統把x預設為1了,之後我賦值給x為0。

同學**截圖:

自己**截圖:

1.條件語句的設定習慣不同,同學追求乙個結構直接把所有運算搞定,而我習慣算一步看一步,同學這樣更加快速,**更加簡潔。

2.打**習慣不同,我習慣在運算子之類的前後用空格分開,同學則習慣按順序打,我的看起來更加清晰一些。

同學**截圖:

自己**截圖:

1.對變數的賦值習慣不同,同學習慣定義時直接把變數賦值,而我習慣重起一行來賦值,同學這樣更加簡潔,沒有重複囉嗦。

2.對{}的使用習慣不同,我習慣在使用if語句時不論怎樣都打上{},而同學習慣省略{},我的**這樣更清晰明了,不會混亂。

周/日期

這週所花的時間

**行學到的知識點簡介

目前比較迷惑的問題

第八周20h

400什麼是主函式;**的儲存單元;會打「hello world」

無第九周

24h450

三個程式結構;各種資料型別;if-else語句的使用

無第十周

28h500

三個運算的優先順序;for迴圈語句的使用;會輸出轉換表

for迴圈的巢狀有些不會

第十一周

30h600

進一步熟悉for迴圈語句;呼叫數學函式;自己定義函式

自己定義函式不太熟練

第十二周

28h580

更進一步學習了多種分支結構的使用;學會了邏輯控制符;學會了else-if語句;

對多種分支結構的使用不太熟練,無法靈活使用

第十三周

34h650

明白了邏輯控制符和其他運算子之間的優先順序的區別;學會了switch語句;預習了多分支結構的另一種用法;

對多分支結構運用太過死板,想到一種就只會使用一種

第十四周

36h680

學習了while和do-while迴圈語句

while和do-while迴圈不能靈活運用

3.3.1 學習內容總結

3.3.2 學習體會

1.這週不像前幾周還好了,感覺這周不怎麼好,有被搞廢了的感覺,特別是pta的第二題,打遊戲還沒什麼感覺,但扯到關於遊戲的題目就真的整個人飛起。

2.這週打**的量還是有的,但質量感覺不咋地,感覺打了這麼多,卻沒有得到應該有的效果,打了這麼多卻昏頭昏腦,看樣子這一部分沒有學習好,還得多自己去學學。

3.對**的思考,這一周是真的幾乎沒有什麼訓練,因為腦袋裡一直盤旋著作業該怎麼寫,這不知是訓練了還是沒訓練,下週不能再這麼昏頭昏腦了。

4.這週不足非常多,需要多去改正,雖然不足多,但也讓我看到了往哪個方向前進,下週要多去改善自己的薄弱點,繼續衝!!!

C語言I部落格作業07

這個作業屬於那個課程 c語言程式設計ii 這個作業要求在 我在這個課程的目標是 熟悉多分支結構switch語句的使用來解決實際問題 這個作業在那個具體方面幫助我實現目標 提供案例給我練習,並可以判斷對錯 參考文獻 pta本題要求編寫程式讀入n個學生的百分制成績,統計五分制成績的分布。百分制成績到五分...

C語言I部落格作業07

這個作業是屬於哪個課程 c語言程式設計ii 這個作業要求在 作業要求 我在這個課程的目標是 熟練運用switch 這個作業在那個具體方面幫助我實現目標 對多個題目運用if分支或者是if中套用for分支 參考文獻 無本題要求編寫程式計算某年某月某日是該年中的第幾天。1.1.1資料處理 資料表達 定義整...

C語言I部落格作業07

這個作業屬於那個課程 c語言程式設計ii 這個作業要求在 我在這個課程的目標是 我希望能開發一種全新的語言程式 這個作業在那個具體方面幫助我實現目標 熟悉多分支結構switch語句的使用 參考文獻 1.pta實驗作業 2.互評 3.學習總結 1.1計算天數 15 分 本題要求編寫程式計算某年某月某日...