1. 程式人生 > >C語言博客作業3--函數

C語言博客作業3--函數

小學 image 4.2 結果 turn 思維導圖總結 我不 理解 temp

C語言博客作業3--函數

1.本章學習總結

1.1思維導圖

請以思維導圖總結本周的學習內容,如下圖所示:

技術分享圖片

1.2本章學習體會及代碼量學習體會

1.2.1學習體會

描述本周學習感受,也可以在這裏提出你不理解地方,對教師教學建議等。
 這周學習的函數,沒有掌握,只是能看懂,要是讓自己寫應該是寫不出來,但還是學到了一些知識,例如:函數是由實參傳給形參,形參只能是變量,void表示不返回結果,return只返回一個結果,局部變量的應用,全局變量的作用和靜態局部變量等。      

1.2.2代碼累計

在excel中畫如下表格,保存好,復制到博客隨筆。註意要累計所有代碼量。

技術分享圖片

#2.PTA總分(2分)

2.1截圖PTA中函數題目集的排名得分

貼圖展示。

技術分享圖片

2.2我的總分:105分

填寫本次題目集的總得分。
<span style ="color:red">註意,請把PTA代碼展示給批閱助教,並能完整回答助教問題,才能得滿分。否則根據回答情況給分。</span>

3.PTA實驗作業(6分)

從PTA題目集中選1題你最滿意的題目,題目選難度越大,分值越高。

3.1PTA題目1

簡要介紹題目,如:
本題要求實現兩個函數:一個函數判斷給定正整數的各位數字之和是否等於5;另一個函數統計給定區間內有多少個滿足上述要求的整數,並計算這些整數的和

3.1.1算法分析

以偽代碼方式描述算法思路。偽代碼註意文字+C語法方式描述,不要純C代碼或者C代碼直接翻譯,能做到看了偽代碼就知道你的思路是如何。
temp=number;     //用temp存儲number

do{
      temp/=10;    /*判斷number有幾位數;
      mask*=10;
    }while(temp>0);
  while(mask>0)    /*用while語句求出number的各個位數;
  {
      temp1=number/mask;
      number%=mask;
      mask/=10;
      sum+=temp1;
    }
再用一個if語句判斷number的各個位數之和是否等於5;
再用一個for循環求出符合條件的數的和sum;

3.1.2代碼截圖

貼圖展示代碼,不要復制,如

技術分享圖片
技術分享圖片
技術分享圖片

3.1.3測試數據

用表格的形式給出測試數據列表,測試數據自己設計,測試數據要全面,能考慮程序各種情況。excel中造表復制進來,如:

技術分享圖片

3.1.4PTA提交列表及說明

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

技術分享圖片

Q1:把全局變量中的number忽略了,沒有在main() 函數中使用。
A1:請教同學幫忙看代碼,找出問題改正。

4.大作業(5分)

題目:實現小學四則運算。

4.1函數關系

可以用思維導圖工具畫函數調用關系。如:

技術分享圖片

4.2.函數功能介紹

1.函數1

文字介紹函數功能,思路,截圖函數代碼。
主函數:寫菜單。

技術分享圖片
技術分享圖片

2.函數2

文字介紹函數功能,思路,截圖函數代碼。
等等
產生隨機數和隨機運算符

技術分享圖片

3.函數3

文字介紹函數功能,思路,截圖函數代碼。
等等
調用Rate函數計算正確率

技術分享圖片

4.3 運行結果截圖

按照程序功能,分別截圖展示運行結果,對於臨界,不合法數據,可單獨截圖運行結果圖。

技術分享圖片
技術分享圖片

4.4 調試碰到問題及解決辦法

Q1:忘記把調用的函數放到主函數裏
A1:找同學幫忙看代碼
Q2: 調用的函數名與定義的變量名相同。
A2:  把調用的函數名的首字母大寫
Q3  每次運行只能做一題
A3: 在主函數裏的調用函數外面用一個for循環

4.5 大作業總結

回顧這個作業編寫過程,總結碰到問題及後續程序編寫註意事項。
總的來將,相對於我而言,還是比較難的,我個人基礎薄弱,大多問題是問同學解決的,我在寫程序的時候沒把調用的函數寫在主函數裏,導致調用的函數不能運行。產生隨機數和運算符的代碼,關於怎麽產生1位,2位隨機數的代碼有瑕疵,用百度查了怎麽產生隨機運算符,回答的是用數組的方法來做,但是我不懂數組的用法。要記得給函數聲明。

C語言博客作業3--函數