-
高級語言程序設計
(東北大學提供的慕課)
鎖定
- 中文名
- 高級語言程序設計
- 類 別
- 慕課、國家精品在線開放課程
- 授課平台
- 中國大學MOOC
- 提供院校
- 東北大學
- 授課教師
- 高克寧、趙長寬、李封
- 開課時間
- 2017年9月27日(首次)
高級語言程序設計課程性質
課程背景
隨着深空探測器、無人機、自動駕駛汽車等智能系統的發展,社會已經進入人工智能時代。計算機及其相關技術是構建人工智能系統中樞的基礎。若將計算機硬件類比軀幹,那計算機程序則是構建大腦的基礎。
現代計算機遵循了艾倫·麥席森·圖靈(Alan Mathison Turing)提出“圖靈機”模型,在馮·諾依曼(John von Neumann)提出的“存儲程序式電子計算機”體系發展至當代。人類設計的計算機程序(包括指令和數據)首先存儲到內存中,然後自動執行,在執行過程中,可能需要從鍵盤、鼠標等輸入設備獲取信息,並向顯示器、打印機等輸出設備輸出結果,其運算通過中央處理器完成。
既然計算機程序要運行於存儲程序是電子計算機中,那麼人們必須瞭解構成程序的指令和數據如何表示和存儲,也就是説為了能夠編寫程序,首先要學習一門計算機程序設計語言。在眾多程序設計語言中,C語言為構建Unix操作系統而設計,後來的Windows、MacOS、Linux、Android等系統,以及眾多應用軟件均使用C語言開發。C語言是新技術開發的利器,因此該門課程選擇了C語言作為學習程序設計的基礎。
[2]
高級語言程序設計開課信息
開課次數 | 開課時間 | 學時安排 | 參與人數 |
---|---|---|---|
第1次開課 | 2017年09月27日~2018年01月31日 | 4小時每週 | 5438 |
第2次開課 | 2018年03月12日~2018年07月15日 | 7270 | |
第3次開課 | 2019年03月04日~2019年07月04日 | 5小時每週 | 3617 |
第4次開課 | 2019年09月22日~2020年01月31日 | 4小時每週 | 3998 |
第5次開課 | 2020年02月23日~2020年07月26日 | 5773 | |
第6次開課 | 2020年09月08日~2021年01月17日 | 待定 | |
高級語言程序設計課程簡介
高級語言程序設計課程圍繞如何運算、如何表達邏輯、如何處理集合數據、如何實現代碼的分解與重用、如何實現基於內存地址的數據訪問、如何表達複雜對象、如何實現數據永久存儲、如何實現程序移植,系統介紹表達式運算、輸入輸出、順序結構、選擇結構、循環結構、數組、函數、指針、結構體、文件、預編譯處理等內容。
[2]
高級語言程序設計課程大綱
01 程序設計入門 在線學習: 1.1 計算機基本原理 1.2 指令與程序 1.3 程序設計語言 1.4 問題求解與算法設計 1.5 程序設計思想 1.6 C語言概述 上機實踐: 1.1 在PC機上,安裝Codeblock軟件,並熟悉基本操作 1.2 在安卓手機,安裝C4driod,並熟悉基本操作 1.3 編寫簡單程序 02 數據表示與運算 在線學習: 2.1 標識符 2.2 數據類型 2.3 常量 2.4 變量 2.5 運算符概述 2.6 算術運算符與算術表達式 2.7 關係運算符與關係表達式 2.8 邏輯運算符與邏輯表達式 2.9 賦值運算符與賦值表達式 2.10 條件運算符與條件表達式 2.11 逗號運算符與逗號表達式 2.12 類型轉換 上機實踐: 2.1 編寫簡單程序 2.2 教材例3-1~3-8 03 基本語句與順序結構 在線學習: 3.1 輸入輸出概念 3.2 printf函數 3.3 scanf函數 3.4 程序控制結構概述 3.5 基本語句 3.6 案例-電影評分計算 上機實踐: 3.1 實現教材例3-9~3-13 3.2 實現案例-電影評分計算 3.3 學有餘力的同學,完成例3-15、例3-16 04 邏輯判斷與選擇結構 在線學習: 4.1 單分支結構-if語句 4.2 雙分支結構-if...else 4.3 多分支結構-if...else if... 4.4 多分支結構-switch 4.5 案例-電影評分計算 上機實踐: 4.1 編寫簡單程序 4.2 實現教材例4-1~4-9 4.3 實現案例-電影評分計算 05 迭代計算與循環結構 在線學習: 5.1 循環結構-while 5.2 循環結構-for 5.3 循環結構-do while 5.4 循環結構-break/continue 5.5 循環結構-嵌套 5.6 實現案例-電影評分計算 上機實踐: 5.1 編寫簡單程序 5.2 實現教材例5-1~5-14 5.3 實現案例-電影評分計算 06 集合數據及其處理 在線學習: 6.1 數組概念 6.2 一維數組 6.3 二維數組 上機實踐: 6.1 編寫簡單程序 6.2 實現教材例6-1~6-7 07 字符數據處理 在線學習: 7.1 字符數組 7.2 字符串 7.3 數組與數據存儲 7.4 案例-電影評分計算 上機實踐: 7.1 編寫簡單程序 7.2 實現教材例6-9~6-13 7.3 實現案例-電影評分計算 08 函數實現代碼分解和重用 | 在線學習: 8.1 函數入門 8.2 函數定義 8.3 函數聲明 8.4 參數傳遞 8.5 函數調用 上機實踐: 8.1 編寫簡單程序 8.2 實現教材例7-4~7-10 09 遞歸及函數結構 在線學習: 9.1 遞歸調用 9.2 源程序結構 9.3 內部函數與外部函數 9.4 變量作用域-全局變量與局部變量 9.5 變量如何存儲 9.6 案例-電影評分計算 上機實踐: 9.1 編寫簡單程序 9.2 實現教材例7-10~7-14 9.3 實現案例-電影評分計算 10 內存地址及其指針 在線學習: 10.1 地址與指針 10.2 指針變量 10.3 指針運算 10.4 指針與一維數組 10.5 指針與二維數組 上機實踐: 10.1實現教材例8-2~8-3 11 指針的應用 在線學習: 11.1 指針與字符串 11.2 指針數組 11.3 數組指針 11.4 函數與指針 11.5 指向變量的地址-指向指針的指針 11.6 內存管理 11.7 實現案例-電影評分計算 上機實踐: 11.1 編寫簡單程序 11.2 實現教材例8-4~8-16 11.3 實現案例-電影評分計算 12 複雜對象描述與結構體 在線學習: 12.1 為何引入結構體及其定義 12.2 結構體變量及其初始化 12.3 結構體數據運算 12.4 結構體數組 12.5 結構體指針 12.6 結構體與函數 12.5 共用體 12.6 枚舉類型 12.7 類型重定義 上機實踐: 12.1 編寫簡單程序 12.2 實現教材例9-2~9-7 13 鏈表及其處理 在線學習: 13.1 鏈表的定義 13.2 鏈表的操作 上機實踐: 13.1 實現案例-電影評分計算 14 預編譯處理 在線學習: 14.1 預編譯處理概述與define 14.2 宏定義 14.3 文件包含與include 14.4 條件編譯 上機實踐: 14.1 實現教材例10-1~10-5 14.2 實現案例-電影評分計算 15 文件與數據永久存儲 在線學習: 15.1 文件概述 15.2 文件定義 15.3 文件操作基礎 15.4 文本文件讀寫 15.5 二進制文件讀寫 15.6 定位與隨機讀寫 15.5 綜合應用 上機實踐: 15.1 編寫簡單程序 15.2 實現教材例11-8~11-10 |
高級語言程序設計課前預備
高級語言程序設計預備知識
高級語言程序設計參考教材
書名 | 作者 | ISBN | 出版社 | 出版時間 |
---|---|---|---|---|
《程序設計基礎(C語言)第3版》 | 高克寧、李金雙、趙長寬、柳秀梅、徐彬 | 9787302488439 | 清華大學出版社 | 2018年1月 |
高級語言程序設計授課目標
1、初步瞭解計算機,建立起程序設計的概念。
2、通過學習用C語言編寫程序,初步掌握程序設計方法,養成良好的程序設計風格。
3、結合C語言,初步系統地學習面向過程和結構化程序設計的思想和方法。
高級語言程序設計所獲榮譽
高級語言程序設計教師簡介
高克寧,東北大學計算中心教授,中國計算機學會辦公自動化專業委員會委員、中國計算機學會高級會員、美國ACM學會會員。
[9]
- 參考資料
-
- 1. 高級語言程序設計第1次開課 .中國大學MOOC[引用日期2020-10-22]
- 2. 高級語言程序設計第6次開課 .中國大學MOOC[引用日期2020-10-22]
- 3. 高級語言程序設計第2次開課 .中國大學MOOC[引用日期2020-10-22]
- 4. 高級語言程序設計第3次開課 .中國大學MOOC[引用日期2020-10-22]
- 5. 高級語言程序設計第4次開課 .中國大學MOOC[引用日期2020-10-22]
- 6. 高級語言程序設計第5次開課 .中國大學MOOC[引用日期2020-10-22]
- 7. 程序設計基礎(C語言)(第3版) .清華大學出版社[引用日期2020-10-22]
- 8. 教育部關於公佈2018年國家精品在線開放課程認定結果的通知 .中華人民共和國教育部政府門户網站[引用日期2020-10-22]
- 9. 東北大學計算中心高克寧教授 .東北大學[引用日期2020-10-22]
- 10. 2014年教學成果獎申報 .東北大學[引用日期2020-10-22]