C語言II部落格作業01

2022-06-20 20:54:14 字數 1753 閱讀 3560

這個作業屬於哪個課程

這個作業要求在**

homework/11768

這個作業的目標

怎樣縮短執行時間

學號20209020

例如:n=2,寫下1,2。這樣只出現了1個」1「。

n=12,我們會寫下1,2,3,4,5,6,7,8,9,10,11,12。這樣,1的個數是5。

問題是:

1.寫出乙個函式f(n),返回1到n之間出現的」1「的個數,比如f(12)=5;

2.滿足條件」f(n)=n「的最大的n是多少?

要求:1.貼出**,寫出解題思路,列出測試資料(5分)

解題思路:利用迴圈從1到n乙個個的提取出來判斷和統計1的個數,利用標頭檔案time.h中的clock庫函式記錄程式開始

時間和結束時間,將兩時間相減得到程式執行用時。

2.給出不同測試資料的運算時間,如果你的運算時間不變,說明你的測試資料不夠大(5分)

3.思考針對足夠大的資料,如何減少運算時間,並給出在原有演算法基礎上的改進演算法和改進思路。(10分)

要減少執行時間就得從迴圈結構入手,減少迴圈次數自然而然就減少了執行的時間。通過設定條件跳過其中不必要的迴圈,

如果十位不是1個位是1則加8可減少迴圈次數,減少執行時間。

改進演算法如圖所示:

2.2 將上題中多組測試資料寫入檔案,並給出測試程式以檢測你的**有沒有問題,貼出你的**、執行結果和檔案內容。(5分)

2.3 用自己的語言回答兩個問題,並給出所查閱資料的引用(10分)

1.什麼是檔案緩衝系統?工作原理如何?

檔案緩衝系統是系統在記憶體區為檔案開闢乙個緩衝

其工作原理是由系統的cou控制儲存。

2.什麼是文字檔案和二進位制檔案?

文字檔案是乙個以ascii碼方式儲存的檔案

二進位制檔案是由數字0,1組成的檔案

2.4 請給出本週學習總結(15分)

1 學習進度條(5分)

2 累積**行和部落格字數(5分)

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

乙個新的作業完成形式讓自己能更清楚知道自己的不足

C語言II部落格作業01

這個作業屬於哪個課程 c語言程式設計 這個作業要求在 作業要求 這個作業的目標 回顧資料型別和表示式,學習檔案操作 學號20208988 例如 n 2,寫下1,2。這樣只出現了1個 1 n 12,我們會寫下1,2,3,4,5,6,7,8,9,10,11,12。這樣,1的個數是5。問題是 1.寫出乙個...

C語言II部落格作業01

這個作業屬於哪個課程 這個作業要求在 homework 11752 這個作業的目標 1.讓我們初步了解測試程式 2.讓我們了解並且學會運用檔案 3.複習之前學過的內容 學號20209154 第6章 回顧資料型別和表示式,第12章 檔案 例如 n 2,寫下1,2。這樣只出現了1個 1 n 12,我們會...

C語言II部落格作業01

這個作業屬於哪個課程 這個作業要求在 homework 11752 這個作業的目標 學習檔案,回顧資料型別和表示式,設計程式來自動輸入資料 學號 20209155 第6章 回顧資料型別和表示式,第12章 檔案 例如 n 2,寫下1,2。這樣只出現了1個 1 n 12,我們會寫下1,2,3,4,5,6...