Course details
This C training will start with basics in programming, building up introducing the C language and how it handles complicated structures. This is a hands on course, participants will spend 75% of their time coding various examples.
Who Should Take This Course:
Programmers building software for Embedded systems, Device drivers, Operating system routines, Systems programming need to learn C Programming, as it is the language of choice when it comes to working with low machine level… + Read More
Course details
This C training will start with basics in programming, building up introducing the C language and how it handles complicated structures. This is a hands on course, participants will spend 75% of their time coding various examples.
Who Should Take This Course:
Programmers building software for Embedded systems, Device drivers, Operating system routines, Systems programming need to learn C Programming, as it is the language of choice when it comes to working with low machine level registers or interacting with the hardware directly.
This is also ideal for first-time programmers who wish to understand programming concepts in general and gain the understanding of how compilers work.
C is reasonably close to the machine. When you're working with pointers, bytes, and inpidual bits, things like optimization techniques start to make a lot more sense. Besides it also serves as great first starting language, to make concepts in programming very clear and straight forward.
We Guarantee the learning of all participants - We will increase the number of sessions if required to ensure learning of participants.
Course Content:
Introduction to Programming
- What is Programming and why do we need it?
- What are the different types and categories of programming languages available today?
- What is the purpose of C programming in the world today?
C Programming Language
Throughout the course you will be using a series of flowcharts to determine the logic of your program / task. You will be taught how to program based onyour design.
Data Types
- What is a Data Type?
- Storing data in memory
- Memory used by primitive data types
Identifiers
- What is an Identifier?
- What is the purpose of an Identifier in C?
- Names given to Data Types
- Naming Conventions in C
Variables
- What is a Variable?
- Purpose of having place holders in memory
- Role of Variables in a program
- Assigning values to a variable
Keywords
- In built words in that define the programming language structure
Operators
- Mathematical Operators
- Operators for performing addition, subtraction, multiplication and pision
- Evaluating mathematical expressions using the BODMAS acronym
- Using the Math.h library functions for complex computations such as square root, max, min and absolute values.
A simple C Program
- Setting up the IDE / Environment on your machine
- Understanding the different parts of a C Program
- Pre-Processor Directives
- Compiling the program
- Executing the program
Decision Constructs
- Logical Operators
- What are logical operators?
- Use of logical operators in C to evaluate conditions or change the behavior of your program
- If statement
- If.. else statement
- Nested If .. else statement
- Switch statement
Repetitive Statements (Loops)
- Types and uses of Repetitive Statements
- FOR Loop
- WHILE Loop
- Do-WHILE Loop
- Conditions to use each kind of Loop
- Nested Loops
- Write programs to print patterns by using the above loop concepts
Arrays
- What is an Array?
- How to use an Array in C?
- Declaring an Arrays
- Storing Values / Elements in an Array
- Performing Operations on the Values / Elements stored in the Array
- What are the advantages and disadvantages of Arrays
Functions
- What is a Function and why do we need it in C?
- How to create a function?
- Types of Functions
- Procedural Functions
- Value Returning Functions
- Differences and Usage
- How to decide which code should be written as a function?
- Advantages of using many smaller functions over one main function
Pointers
- What is a Pointer?
- How to declare and use a Pointer?
- What is the need for a pointer?
- Pointer with Functions
- Pointer as a return type of a function
- Pointer as an input to a function
- Difference between Call by Value & Call by Reference
- Pointer with Arrays
- Using Pointers to pass an array to a function
- Keeping track of memory locations of elements in the array using a Pointer
- Array name as a pointer
Recursion
- Recursive Functions - Function that calls itself
- Advantage of a recursive function over a normal function
Strings
- Collection of Characters as a character Array
- Collection of Characters as a character Pointer
- Manipulating Strings using functions from the String.h library
Structures & Linked Lists
- Introduction to Structures
- Need for using Structures
- The struct keyword
- Creating Complex Data Types using Structures
- Discussion & Introduction to Linked Lists
Console I/O
- Using functions of the stdio.h library to get user input and display content to screen
- printf(), scanf()
- getchar() - putchar()
- gets() - puts()
- File I/O
- Use of files in C to store and retrieve data
- Introduction to the FILE Pointer
- File Modes and their meaning
- Read, Write, Append
- Using functions from stdio.h library to read and write contents from files
- Open File, Close File
- Read & Write characters
- Read & Write Strings
Updated on 08 November, 2015 - Read Less