程式語言
Programming Language
| 節 | 週二 |
|---|---|
2 09:00–09:50 | 程式語言 YT303 3 節連堂 |
3 10:10–11:00 | |
4 11:10–12:00 |
* 根據陽明交大上課時間表所列
This course (3 credit hours) is for non-computer science majors with little or no background in programming. Thus, prior knowledge of c is not expected. The main objective of the course is to get hands on the c programming language, and to learn the syntax and the different structures to build programs. We will learn how to solve problems and transform the solutions into computer programs written in C/C++ language.
Goals for this introductory course -by the end of the semester- should be: 1) introducing the basic computer software and hardware concepts to build programs; 2) understanding the fundamental C/C++ coding building blocks and structures to build interactive problems; 3) introducing how to write a modular and efficient program in C and C++.
Midterm exam:25% Final exam:25% Quiz: 15% On-line exam: 15% Hw: 20%
| 週次 | 主題 |
|---|---|
| 第 1 週 | Intro to Programming: Programming language, flow control, Bits and Bytes.Important Language Categories and History Functional Programming Languages and Scheme |
| 第 2 週 | Intro to C: Program structure, compiler and IDE. Variables and Assignment, Data types, Constants ,Printing in C with printf, input using scanf |
| 第 3 週 | Expressions Arithmetic operators, Precedence of operations, Compound Assignment , Evaluation of expressions with precedence and associatively |
| 第 4 週 | Control Constructs – looping, while, do, for, Exercises with Looping (1) |
| 第 5 週 | Control Constructs – looping, while, do, for, Exercises with Looping (2) |
| 第 6 週 | Problem solving with selection and iteration, Increasing complexity of problems |
| 第 7 週 | Arrays, Problem solving with Arrays, Multidimensional arrays, Sorting and searching algorithms, Arrays passed to functions (1) |
| 第 8 週 | Arrays, Problem solving with Arrays, Multidimensional arrays, Sorting and searching algorithms, Arrays passed to functions (2) |
| 第 9 週 | Arrays, Problem solving with Arrays, Multidimensional arrays, Sorting and searching algorithms, Arrays passed to functions (3) |
| 第 10 週 | Midterm exam |
| 第 11 週 | Structured programming, Creating and calling a function. Function return types, including void Passing parameters to functions, Function prototypes. Passing by value and passing by reference. & and * operators for addressing. Random number generation, Variable Scope (1) |
| 第 12 週 | Structured programming, Creating and calling a function. Function return types, including void Passing parameters to functions, Function prototypes. Passing by value and passing by reference. & and * operators for addressing. Random number generation, Variable Scope (2) |
| 第 13 週 | Structured programming, Creating and calling a function. Function return types, including void Passing parameters to functions, Function prototypes. Passing by value and passing by reference. & and * |
| 第 14 週 | Pointers and arrays – dealing with Strings |
| 第 15 週 | Dynamic memory allocation – using the stack and the help |
| 第 16 週 | Structs – creating your own data types. Problem solving with structs. Pointers to structs, manipulating structs. Passing structs to functions by value and by reference |
| 第 17 週 | Linked List and its application |
| 第 18 週 | Final exam |
Textbook: C How to Program, 9/e, by Paul Deitel & Harvey Deitel Reference book: The C Programming Language, 2/e, by Brian W. Kernighan, Dennis M. Ritchie