Year 4: Advanced C
Requirements : Age 12+ OR Basic Knowledge of C
Duration : 3 Months ( 24 hours )
What is this Course ?
1. C is a powerful general-purpose programming language.
2. It can be used to develop software like operating systems, databases, applications compilers, etc.
3. C programming is an excellent language and can be learnt by the beginners in coding .
Why this Course ?
1.C is one of the foundations for modern information technology (IT) and computer science (CS).
2. C is the base for almost all popular programming languages and hence C is one of the most commonly used programming languages in academics and industries.
3. Once students have learned C, they can pick up any other languages by themselves.
4. It is robust language whose rich setup of built in functions and operator can be used to write any complex program.
5. The C compiler combines the capabilities of an assembly language with the feature of high level language. Therefore it is well suited for writing both system software and business package.
1. Able to implement the algorithms and draw flowcharts for solving Mathematical
and Engineering problems.
2. Demonstrate an understanding of computer programming language concepts.
3. To be able to develop C programs on linux platform.
4. Ability to design and develop Computer programs, analyzes, and interprets the
concept of pointers, declarations, initialization, operations on pointers and their
5. Able to define data types and use them in simple data processing applications also
he/she must be able to use the concept of array of structures. Student must be able
to define union and enumeration user defined data types.
6. Develop confidence for self education and ability for life-long learning needed for
Quick recap on C Compilation phases , difference between other compilation phases , data types, storage identifiers loops and statements, Arrays, Functions , Strings , pointers, structures and unions.
a. Pointer Arithmetic
b. Pointers and Arrays
c. Pointers and Functions
d. Functions with Array Parameters
e. Functions Returning Arrays
f. Function Pointers
g. Array of Function Pointers
h. Void Pointer
b. Accessing Members
c. Structures with Structures
d. Pointers to structures
e. Array of structures
b. Accessing Members
c. Structures with Unions
d. Pointers to Unions
e. Array of Unions
IV. MEMORY MANAGEMENT
a. Dynamic Memory Allocation
b. Memory Management Functions
c. Dynamic Memory for Strings and Arrays
V. PRE-PROCESSOR DIRECTIVES
VI. LINKED LISTS