一、課程說明 (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)
Lectures with slides and implementation

五、教學內容 (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
online midterm exams, one online 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%)