作業屬於哪個課程 | 班級的鏈接 |
---|---|
這個作業要求在哪里 | 作業要求的鏈接 |
這個作業的目標 | 學會在給定文件中讀取數據並進行數據處理,初步了解文件,學會主動學習 |
學號 | 20208927 |
2.1.實驗作業
題目:給定一個十進制正整數N,寫下從1開始,到N的所有整數,然后數一下其中出現的所有“1”的個數。
例如: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;
思路:遍歷1~N,統計每個數中“”1出現的個數,相加即可得所有“1”的個數。
12 | 5 |
---|---|
99 | 20 |
999 | 300 |
9999 | 4000 |
99999 | 50000 |
999999 | 600000 |
問題2.滿足條件“f(N)=N”的最大的N是多少?
2.2 將上題中多組測試數據寫入文件,並給出測試程序以檢測你的代碼有沒有問題,貼出你的代碼、運行結果和文件內容。
2.3 用自己的語言回答兩個問題,並給出所查閱資料的引用(10分)
1.什么是文件緩沖系統?工作原理如何?
文件緩存系統是數據交換的緩存區。
文件緩存系統的工作原理就是在內存開辟“緩存區”,當執行讀文件的操作時,從磁盤文件中將數據先讀入內存“緩存區”,裝滿之后再從內存“緩存區”依次讀入接收的變量。
2.什么是文本文件和二進制文件?
文本文件就是每個字符由一個或多個字節組成,每個字節都是用的-128—127之間的部分數值來表示的,也就是說,-128——127之間還有一些數據沒有對應任何字符的任何字節。如果一個文件中的每個字節的內容都是可以表示成字符的數據,就稱這個文件為文本文件,因此,文本文件只是二進制文件中的一種特例。
二進制文件就是為了與文本文件區別開來,把除了文本文件以外的文件稱為二進制文件。因此,就可以簡單地認為,如果一個文件專門用於存儲文本字符的數據,沒有包含字符以外的其他數據,我們就稱之為文本文件,除此之外的文件就是二進制文件。
2.4 請給出本周學習總結(15分)
1 學習進度條(5分)
周 | 日期 | 這周所花時間 | 代碼行 | 學到的知識點簡介 | 目前比較迷惑的地方 |
---|---|---|---|---|---|
第一周 | 3.1 | 4h | 150 | 文件數據的讀寫和處理 | mode的取值,計算代碼運算時間 |
2 累積代碼行和博客字數(5分)
3 學習內容總結和感悟(5分)
1.過了個寒假,上課的內容變得極其陌生,開了學應該要把玩心收收,專業課的時間減少,但是每周學習專業知識的時間不可以減少,遇到問題不能一閃而過,要在心里存疑,在課后的時間去主動的尋找答案。
2.不要給自己定過高的目標,以實際情況為主,不要好高騖遠,要腳踏實地。
3.代碼要每周練練手,荒廢了近兩個月,感覺打代碼的那種感覺少了很多,很多那種細小的知識已經忘的差不多了。