Módulo 0: Installing and using your programming environment
Introduction to IDE; Online tools; Edube Interactive
Módulo 1: Intro to computer programming, variables, and comments
Languages: natural and artificial, machine languages, high-level programming languages; obtaining the machine code: compilation process; writing simple programs; variables, integer values in real life and in C, integer literals; comments.
Módulo 2: Basic data types, operations, and flow control (decision-making statements)
Floating-point values in real life and in C; arithmetic operators, priority and binding; post- and pre-incrementation, decrementation; operators of type op=, the char type and ASCII code, char literals; equivalence of int and char data; comparison operators; conditional execution and the if keyword; the printf() and scanf() functions
Módulo 3: Flow control (loops), int and float types, typecasting, and computer logic
Conditional execution: the else branch; integer and float types; conversions, typecast and its operators; loops: while, do, and for; controlling the loop execution: break and continue; logical and bitwise operators.
Módulo 4: Switch, aggregating data into arrays, pointers, and the basics of strings
Switch: different faces of if; arrays (vectors), sorting in real life and computer memory, initiators, pointers, an address, a reference, a dereference and the sizeof operator; simple pointers, pointers to nothing (NULL); the & operator, pointer arithmetic; pointers vs. arrays: different forms of the same phenomenon; strings, string manipulation.
Módulo 5: Advanced operations on arrays and pointers, memory management, and functions
Array indexing; using pointers: perils and disadvantages; the void type, arrays of arrays and multidimensional arrays; memory allocation and deallocation: the malloc() and free() functions; arrays of pointers vs. multidimensional arrays, the basics of functions.