零、本課程為 16+2 課程,將於第十六周完成期末考,第十七周&第十八周則進行黑客松活動與期末專
題實作。


一、課程說明 (Course Description)

This course is aimed to help the students learn how to program in C.


二、指定用書 (Textbook)

S. Prata, C PRIMER PLUS

三、參考書籍 (References)

B. W. Kernighan and D. M. Ritchie, THE C PROGRAMMING LANGUAGE, Second Edition.
Prentice Hall, 1988.

四、教學方式 (Teaching Method)

演講與實作

五、教學內容 (Syllabus)

Data and C (Intro to GDB)
Formatted Input/Output
Operators, expressions, and Statements
Control Statements: Looping, Branching
Character I/O and Redirection
Functions
Recursion
Arrays and Pointers
String Functions
File Input/Output
Bit Manipulation
Memory Management
Structures
The C Preprocessor and the C Library
Advanced Data Representations
Final Project


六、成績考核 (Evaluation)

The grade is based on the scores of several labs, one written exam, two
midterm
exams, one final exam, and the final project, with the following percentages:
1. Online judge labs (15%) — every week
2. One written exam (10%)
3. Two midterm online exams (10% + 20%)
4. One final online exam (30%)
5. Final project (15%)
One day hackathon