2023-先修課程-程式設計導論(9-12月)

  • 0.0
  • 121 學生
  • 報名時間 : 2023/01/01 - 2023/12/31
  • 開課時間 : 2023/01/01 - 2023/12/31
  • 課程費用 : 800 元

報名時間結束

介紹

程式設計是一個透過程式語言表達想法的過程。把撰寫好的正確程式交給電腦執行,就能利用電腦的快速運算能力,讓電腦依照我們的想法,幫我們處理資料、解決問題。這門課將以 C 語言為主體,介紹程式設計的基本概念和技術。C 語言歷經四十年的考驗,至今仍是最被廣泛使用的程式語言之一,重要性不容置疑。較近期發明的新語言,無論是在語法或是概念上,或多或少也都會受到 C 語言的影響。學習 C 語言程式設計,對於奠定程式設計的基礎十分有幫助。在開發軟體時,若程式的執行效率是重要考量,則 C 語言往往也會被列為優先選擇。

 這門課的適用對象是程式設計初學者,目標是希望幫助學生,學會如何將腦中的想法轉換成程式碼,學會利用電腦來處理資料和解決問題。我們將在八個星期中,介紹C語言程式設計的基本技巧,讓學生在修完這門課之後,能夠具備足夠的程式設計能力,以銜接後續更進階的資訊工程課程。

教師提供課程製作講義,並放置於課程網站之中。

指定用書

S. Prata, C PRIMER PLUS, Fifth Edition. SAMS, 2005.

Fourth Edition 連結 (點我開啟)

參考資料

1. B. W. Kernighan and D. M. Ritchie, THE C PROGRAMMING LANGUAGE, Second Edition.

    Prentice Hall, 1988.

2. The C Book 電子書 (點我開啟)

3. The GNU C Programming Tutorial (點我開啟)

4. The GNU C Library (點我開啟)

 

 

章節

* 以下章節為預覽,請點報名後點選開始上課,進入課程
  • Week 1 簡介、資料型態、格式化輸出與輸入、運算符號與運算式
    • ● C語言簡介:Intro
    • ● C語言簡介:Introduction 1
    • ● C語言簡介:Introduction 2
    • ● C語言簡介:Introduction 3
    • ● 練習題:C 語言簡介 Introduction 3 Quiz
    • ● C 語言簡介-講義
    • ● 資料型態:Intro
    • ● 資料型態:DataType 1
    • ● 練習題:資料型態 Data Type 1
    • ● 資料型態:DataTape 2
    • ● 練習題:資料型態 Data Type 2
    • ● 資料型態:DataTape 3
    • ● 練習題:資料型態 Data Type 3
    • ● 資料型態:DataTape 4
    • ● 練習題:資料型態 Data Type 4
    • ● 資料型態:DataTape 5
    • ● 練習題:資料型態 Data Type 5
    • ● 資料型態-講義
    • ● 格式化輸出與輸入:Intro
    • ● 格式化輸出與輸入:FormattedIO 1
    • ● 練習題:格式化輸出與輸入 Formatted IO 1
    • ● 格式化輸出與輸入:FormattedIO 2
    • ● 練習題:格式化輸出與輸入 Formatted IO 2
    • ● 格式化輸出與輸入:FormattedIO 3
    • ● 練習題:格式化輸出與輸入 Formatted IO 3
    • ● 格式化輸出與輸入-講義
    • ● 運算符號與運算式:Intro
    • ● 運算符號與運算式:Operators 1
    • ● 運算符號與運算式:Operators 2
    • ● 運算符號與運算式:Operators 3
    • ● 運算符號與運算式:Operators 4
    • ● 運算符號與運算式:Operators 5
    • ● 練習題:運算符號與運算式 Operators 5
    • ● 運算符號與運算式-講義
  • Week 2 迴圈、條件判斷
    • ● 迴圈:Intro
    • ● 迴圈:Looping 1
    • ● 迴圈:Looping 2
    • ● 迴圈:Looping 3
    • ● Looping
    • ● 迴圈-講義
    • ● 條件判斷:Intro
    • ● 條件判斷:Branching 1
    • ● 條件判斷:Branching 2
    • ● 條件判斷:Branching 3
    • ● 條件判斷:Branching 4
    • ● 條件判斷:Branching 5
    • ● 條件判斷:Branching 6
    • ● 條件判斷:Branching 7
    • ● 條件判斷:Branching 8
    • ● Branching
    • ● 條件判斷-講義
  • Week 3 字元輸入與輸出、函數
    • ● 字元輸入與輸出:Intro
    • ● 字元輸入與輸出:Character IO 1
    • ● 字元輸入與輸出:Character IO 2
    • ● 字元輸入與輸出:Character IO 3
    • ● 字元輸入與輸出:Character IO 4
    • ● 字元輸入與輸出:Character IO 5
    • ● 字元輸入與輸出:Character IO 6
    • ● 字元輸入與輸出:Character IO 7
    • ● 練習1
    • ● 字元輸入與輸出-講義
    • ● 函數:Intro
    • ● 函數:Functions 1
    • ● 函數:Functions 2
    • ● 函數:Functions 3
    • ● 函數:Functions 4
    • ● 練習2
    • ● 函數-講義
  • Week 4 遞迴、指標、陣列 (一)
    • ● 遞迴:Intro
    • ● 遞迴:Recursion 1
    • ● 練習1
    • ● 遞迴:Recursion 2
    • ● 練習2
    • ● 遞迴:Recursion 3
    • ● 遞迴:Recursion 4
    • ● 練習3
    • ● 遞迴:Recursion 5
    • ● 遞迴:Recursion 6
    • ● 練習4
    • ● 遞迴:Recursion 7
    • ● 練習5
    • ● 遞迴-講義
    • ● 指標:Intro
    • ● 指標:Pointers 1
    • ● 指標:Pointers 2
    • ● 練習6
    • ● 指標:Pointers 3
    • ● 練習7
    • ● 指標-講義
    • ● 陣列:Intro
    • ● 陣列:Arrays 1
    • ● 陣列:Arrays 2
    • ● 陣列:Arrays 3
    • ● 練習8
    • ● 陣列-講義
  • Week 5 陣列 (二)、指標、陣列與函數
    • ● 陣列:Arrays 4
    • ● 陣列:Arrays 5
    • ● 練習1
    • ● 陣列:Arrays 6
    • ● 陣列:Arrays 7
    • ● 練習2
    • ● 指標、陣列與函數:Intro
    • ● 指標、陣列與函數:Pointers, Arrays, and Functions 1
    • ● 指標、陣列與函數:Pointers, Arrays, and Functions 2
    • ● 練習3
    • ● 指標、陣列與函數:Pointers, Arrays, and Functions 3
    • ● 指標、陣列與函數:Pointers, Arrays, and Functions 4
    • ● 練習4
    • ● 指標、陣列與函數:Pointers, Arrays, and Functions 5
    • ● 練習5
    • ● 指標、陣列與函數:Pointers, Arrays, and Functions 6
    • ● 練習6
    • ● 補充教材-講義
  • Week 6 記憶體、C 結構
    • ● 記憶體:Intro
    • ● 記憶體:Memory 1
    • ● 練習1
    • ● 記憶體:Memory 2
    • ● 練習2
    • ● 記憶體-講義
    • ● C結構:Intro
    • ● C結構:CStrcut 1
    • ● C結構:CStrcut 2
    • ● C結構:CStrcut 3
    • ● C結構:CStrcut 4
    • ● 練習3
    • ● C結構:CStrcut 5
    • ● C結構:CStrcut 6
    • ● 練習4
    • ● C結構-講義
  • Week 7 補充資料
    • ● 補充資料:Intro
    • ● 補充資料:Bit Operators 1
    • ● 補充資料:Bit Operators 2
    • ● 練習
    • ● 補充資料:File IO
    • ● 補充資料:Strings 1
    • ● 補充資料:Strings 2
    • ● 補充資料:Strings 3
    • ● 補充資料:Quick Sort
    • ● 補充資料:Function Pointers
    • ● 補充資料:Binary Search
    • ● 位元運算-講義
    • ● 檔案輸入與輸出-講義
  • Week 8 製作小遊戲
    • ● 製作小遊戲:Intro
    • ● 製作小遊戲:Game 1
    • ● 製作小遊戲:Game 2
    • ● 製作小遊戲:Game 3
    • ● 製作小遊戲:Game 4
    • ● 製作小遊戲:Game 5
    • ● 製作小遊戲:Game 6
    • ● 製作小遊戲:Game 7
    • ● 製作小遊戲:Conclusion
    • ● 小遊戲範例程式

常見問題

線上成績單 :
此課程線上成績單申請費用為免費

學習履歷 :
此課程學習履歷申請費用為免費


(1) (取得修課證明)適用於完全採取「線上學習」的同學(不參與實體期末考試):於課程內完成兩次線上測驗,每次測驗各可考兩次,將取高分測驗為評分依據,總分達60分以上,即可申請「線上成績單」**清大學生此證明無法抵免學分,其他學校請查閱認抵資訊。

清華雲修課證明後續處理詳網頁:https://mooc.nthu.edu.tw/news/info/16

(2) (取得成績證明)

適用於採取「線上學習+實體考試」的準大㇐新生。

評量分為兩部分:「線上學習」和「實體考試」,兩部分各佔總成績 50%。若總成績超過60分,核發清華大學學分(視為自由選修)。

「線上學習」50%:依照「評量方式㇐」的規定取得分數。

「實體考試」50%:需另外報名參加在清華大學所舉辦的期末實體考試,報名費及考試日期等詳見網址;https://mooc.nthu.edu.tw/news/info/25

**112年辦理實體考試日程等相關資訊預計於8月初公布,
實體考試定為:112年8月31日(四)、112年9月1(五)兩日。
考試成績結算:112年9月5日(二)
考試成績公告:112年9月8日(五)

「所有免修證明將與招聯會同步辦理。」

講師

teacher Picture

陳煥宗

國立清華大學資訊工程學系 教授

查看講師

評價

0.0

平均評價

本課程尚未有人來評價

預覽影片 & 簡介

2023-先修課程-程式設計導論(9-12月)

本課程適合準大一新生選讀
程式設計是一個透過程式語言表達想法的過程。把撰寫好的正確程式交給電腦執行,就能利用電腦的快速運算能力,讓電腦依照我們的想法,幫我們處理資料、解決問題。這門課將以 C 語言為主體,介紹程式設計的基本概念和技術。C 語言歷經四十年的考驗,至今仍是最被廣泛使用的程式語言之一,重要性不容置疑。較近期發明的新語言,無論是在語法或是概念上,或多或少也都會受到 C 語言的影響。學習 C 語言程式設計,對於奠定程式設計的基礎十分有幫助。在開發軟體時,若程式的執行效率是重要考量,則 C 語言往往也會被列為優先選擇。