#2023-2024-1 20231408《計算機基礎與程序設計》第九周學習總結
作業信息
| 這個作業屬于哪個課程 | <2023-2024-1-計算機基礎與程序設計> |
|---|---|
| 這個作業要求在哪里 | <2023-2024-1計算機基礎與程序設計第九周作業> |
| 這個作業的目標 | < 《計算機科學概論》第十,十一章,《C語言程序設計》第八章,上周測試題> |
| 作業正文 | http://www.rzrgm.cn/jfxyh061028/p/17858066.html |
教材學習內容總結
對于計算機科學概論
- 進程,進程管理,進程狀態
- 進程的生命周期,有創建階段,準備就緒狀態,運行狀態,等待狀態和終止狀態。掌握進程的生命周期圖
- 內存管理,邏輯地址和物理地址的區別,單塊內存管理和分區內存管理。
- CPU調度有兩種,搶先調度和非搶先調度,CPU調度有三種算法,先到先服務,最短作業優先和輪詢法,**前兩個屬于非搶先調度,第三個屬于搶先調度。
- 文件的概念,文本文件和二進制文件,
- 區分文件類型,并掌握常見的文件類型及其擴展名。
- 目錄,根目錄和工作目錄。
- 路徑,絕對路徑和相對路徑。
- 磁盤調度的三種算法,先到先磁盤調度法,最短尋道時間優先磁盤調度法,SCAN磁盤調度法。
對于C語言程序設計
- 如何定義一維數組,二維數組甚至是多維數組
- 如何對數組進行初始化。
- 如何向函數傳遞一維數組和二維數組。
- 排序,查找,求最值等功能的算法實現。
教材學習中的問題和解決過程
- 問題1:最短作業優先CPU調度算法具體是如何估算每個進程的服務時間的?
- 解決方案:最短作業優先(SJF)CPU調度算法是一種基于進程預測的算法,它的核心是估算每個進程的服務時間,以便在調度時選擇最短的作業。估算每個進程的服務時間是SJF算法的重要一步,通常有以下兩種方法:
靜態估算法
靜態估算法是一種基于歷史數據的方法,它假設每個進程的服務時間是固定的,因此可以通過過去的執行時間來估算未來的執行時間。具體來說,可以使用過去n次的執行時間的平均值來估算未來的執行時間,其中n是一個固定的數。
靜態估算法的優點是簡單易行,缺點是無法應對進程服務時間的變化,因此可能會導致調度不公平。
動態估算法
動態估算法是一種基于當前數據的方法,它假設每個進程的服務時間是可變的,因此需要根據當前的執行情況來動態估算服務時間。具體來說,可以使用一些算法來預測進程的執行時間,例如指數平均法、加權移動平均法等。
動態估算法的優點是可以應對進程服務時間的變化,因此可以更公平地進行調度,缺點是算法復雜度較高,需要實時更新服務時間的估算值。
總之,估算每個進程的服務時間是SJF算法的關鍵步驟,不同的估算方法有不同的優缺點,需要根據具體情況選擇合適的方法。
- 問題2:在C語言的主函數里調用函數時,
n=Readscore(score);與Readscore(score,n);有什么不同? - 解決方案:在C語言的主函數里調用函數時,
n=Readscore(score);和Readscore(score, n);有以下不同:
-
n=Readscore(score);:
這種調用方式假設Readscore函數返回一個值,該值將賦給變量n。通常情況下,這種調用方式意味著Readscore函數會返回一個與score相關的數值,而不需要通過參數傳遞n。 -
Readscore(score, n);:
這種調用方式假設Readscore函數需要兩個參數:score和n。在這種情況下,n將作為參數傳遞給Readscore函數,以便函數內部可以使用或修改n的值。
因此,n=Readscore(score);和Readscore(score, n);的不同在于對函數參數的傳遞方式和返回值的使用。前者假設函數返回一個值,而后者假設函數需要額外的參數。
代碼調試中的問題和解決過程




上周考試錯題總結
上周無錯題
學習進度條
| 代碼行數(新增/累積) | 博客量(新增/累積) | 學習時間(新增/累積) | 重要成長 | |
|---|---|---|---|---|
| 目標 | 5000行 | 30篇 | 400小時 | 優秀 |
| 第一周 | 2/3 | 20/20 | 合格 | |
| 第二周 | 20/20 | 1/4 | 15/35 | 終于理解了一些概念,能看懂一些話了 |
| 第三周 | 20/40 | 1/5 | 20/55 | |
| 第四周 | 50 /90 | 2/7 | 20/75 | |
| 第五周 | 80/170 | 1/8 | 30/105 | 會編寫一些簡單程序了 |
| 第六周 | 30/200 | 2/10 | 30/135 | 編程水平提升了 |
| 第七周 | 30/230 | 1/11 | 25/160 | 編程得更熟,也知道了計算機方面更多粗淺的知識。 |
| 第八周 | 60/290 | 2/13 | 30/190 | 對于高級語言的一致性有了認識。 |
| 第九周 | 100/390 | 1/14 | 30/230 |
浙公網安備 33010602011771號