Description: Basic concepts of computer systems, electronic data processing and concepts, system and application software, algorithms, flowcharts, data representation, program design and development methodology, problem solving using high-level language programming.
Course staff and contact information:
Instructor: Dr. Songyot Nakariyakul
E-mail: nsongyot@engr.tu.ac.th
Office: Room 420-2 Research Building
Office Hours: By appointmentPre-requisites: None.
Problem sets: You are encouraged to do problem sets to reinforce what you learn in lecture, but they will not be graded.
Grading:
Class attendance 10%
Lab test 10%
Midterm 35%
Final 45%Evaluation:
[80, 100] = A
[0, 45) = F
Software: We will use Code:Blocks (download) to write C programs.
Textbooks & Materials:
- คู่มือการเขียนโปรแกรมภาษา C ฉบับสมบูรณ์ โดย รศ. ธีรวัฒน์ ประกอบผล
- การเขียนโปรแกรมด้วยภาษา C โดย อ. โอภาส เอี่ยมสิริวงศ์
- H. M. Deitel and P. J. Deitel, C How to Program 5th edition, Prentice Hall, 2007
Topic | Lecture Notes | Problem Set | Solution | |
Course outline | ||||
1 | Computer overview, hardware & software | slides | ||
2 | Number systems | slides | ||
3 | Data representation | slides | ||
4 | Programming development environment | slides | ||
5 | Introduction to C programming | slides | ||
6 | C Data types and operators | slides | ||
7 | C Formatted I/O | slides | PS1 | Sol1 |
8 | Structured program development in C, algorithm, pseudocode, flowchart | slides | ||
9 | C Program control condition | slides | PS2 | Sol2 |
10 | C Program control repetition | slides | PS3 | Sol3 |
11 | C Functions | slides | PS4 | Sol4 |
12 | C Arrays | part_1 part_2 part_3 |
PS5 | Sol5 |
13 | C Characters and strings | slides |