C Language

Course Modules we covered:

Introduction to Software and Classification

  • System Software
  • Types of Operating System
  • Types of Programming Languages
  • Translators
  • Desirable Program Characteristics

Introduction to C

  • Evolution of C
  • Flavors of C Compilers
  • Features of C
  • The C character set
  • Identifiers and Keywords
  • Data types /Constants
  • Symbolic constants
  • Variables and Datatypes
  • Escape Sequences
  • Format Control Strings
  • The structure of C Program
  • First C Program

Standard Input and Output Functions

  • Library Functions
  • Single Character Input – The getchar Function
  • Single Character Output – The Putchar Function
  • Entering input Data – The scanf Function
  • More about the scanf/ Printf
  • The gets and Puts Function

 Operators and type Conversions

  • Operators
  • Precedence and Order of Evaluation
  • Arithmetic Operators
  • Unary Increment and Decrement Operators
  • Unary Operators
  • Relational and Logical Operators
  • Assignment Operators
  • The Conditional Operator/ternary
  • Compound Assignment Operators
  • Sizeof operator
  • Implict type Conversion (coercion)
  • Explicit type conversion(casting)
  • Bitwise Operators

Control Structures

  • Statements and Blocks
  • The if / else
  • Nested Conditional Constructs
  • Switch statement
  • The while loop/ for loop
  • The do while loop
  • The break statement
  • The continue statement
  • The exit

Low Level Programming

  • Number Systems
  • Bitwise Operators
  • Bit Fields

 Functions

  • Introducing Functions
  • Defining a Function
  • Accessing a Function
  • Function Prototype
  • Function calls
  • Return statements
  • Recursions
  • Nested Functions

 

Memory Organization

  • Understanding Memory Concepts
  • Storage Classes
  • MultiFile Programs

Pointers

  • Fundamentals
  • Address and Dereferencing
  • Pointer Declarations
  • Pointer operations
  • Pointers and Functions
  • Call by Value,call by reference
  • Pointer to Pointers
  • Passing Pointer to Functions
  • Void pointer
  • Function returning pointers

Arrays

  • Array Declaration
  • Single Dimension Arrays
  • Multi Dimensional Arrays
  • Pointer and Arrays (Single Dimension)
  • Array of Pointers
  • Arrays as Function Arguments
  • Dynamic Memory Allocation

Strings

  • Introduction to Strings
  • Difference between char [] and char *
  • Standard String Library Functions

Introduction To Macros

  • The C Preprocessor
  • Introduction to Preprocessor
  • Macro Substitution
  • File Inclusion
  • Macro Testing
  • Conditional Compilation

Structures and Unions

  • Declaring a Structure
  • Accessing structure members
  • Nested Structures
  • Typedef
  • Array of Structures
  • Structures and Pointers
  • Passing Structures to Functions
  • Pictorial Representation of above code
  • Structures as function arguments
  • Operations on Unions
  • Unions and Structures Differences
  • Uses of Structures
  • Enumerations

File Handling

  • Introduction
  • Formatted and Unformatted file
  • I/0 functions
  • Random Access Files
  • Fseek() , ftell() and rewind()