C語言II部落格作業01

2022-06-15 19:30:17 字數 1798 閱讀 8552

|這個作業屬於那個課程| |

| ---- | ---- | ---- |

|這個作業要求在** |/homework/11756 |

|這個作業的目標 | 《回顧並鞏固上課知識》 |

|學號 |<20209208> |

第6章 回顧資料型別和表示式,第12章 檔案

例如: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是多少?

當n=1時滿足f(n)=n

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

解題思路:這次程式自己首先想到的是把1—n的每個數裡邊的1數一遍。但這不是最有效的辦法,從2開始列舉,然後分離個位數字,如果個位數為1,那麼計數器就+1.用個臨時變數記錄i的值。

輸入資料

輸出資料

說明20

12從1到20數字1出現的個數為12次

10021

從1到100數字1出現的個數為21次

1000

301從1到1000數字1出現的個數為301次

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

輸入資料

輸出資料

運算時間

----

----

----

2012

1.521

10021

2.112

1000

3013.343

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

改進演算法:將迴圈結構for改為do-while迴圈結構。

改進思路:優化迴圈結構

1 學習進度條(5分)

周/日期

這週所花時間

**行數

學到的知識點簡介

目前比較迷惑的問題

第一周兩天

70檔案

檔案的如何執行,以及測試程式的編寫

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

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

感悟:整個寒假都沒有複習,現在比較的生疏。需要努力擴充c語言知識,快點恢復狀態,從寒假的安逸中走出來。

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...