PPS

Programming for Problem Solving

View project on GitHub

C PROGRAMMING LANGUAGE

Hardeep Singh Rai

Jaswant Singh Taur

Preface

Way to work in Laboratory

Introduction

  1. Getting Started
  2. Variables and Arithmetic Expressions
  3. The For Statement
  4. Symbolic Constants
  5. Character Input and Output
  6. Arrays
  7. Functions
  8. Arguments: Call by Value
  9. Character Arrays
  10. External Variables and Scope

Types, Operators, and Expressions

  1. Variable Names
  2. Data Types and Sizes
  3. Constants
  4. Declarations
  5. Arithmetic Operators
  6. Relational and Logical Operators
  7. Type Conversions
  8. Increment and Decrement Operators
  9. Bitwise Operators
  10. Assignment Operators and Expressions
  11. Conditional Expressions
  12. Precedence and Order of Evaluation

Control Flow

  1. Statements and Blocks
  2. if-else
  3. else-if
  4. switch
  5. Loops: while and for
  6. Loops: do-while
  7. break and continue
  8. goto and labels

Functions and Program Structure

  1. Basics of Functions
  2. Functions Returning Non-integers
  3. External Variables
  4. Scope Rules
  5. Header Files
  6. Static Variables
  7. Register Variables
  8. Block Structure
  9. Initialisation
  10. Recursion
  11. The C Preprocessor

Pointers and Arrays

  1. Pointers and Addresses
  2. Pointers and Function Arguments
  3. Pointers and Arrays
  4. Address Arithmetic
  5. Character Pointers and Functions
  6. Pointer Arrays, Pointers to Pointers
  7. Multi-dimensional Arrays
  8. Initialisation of Pointer Arrays
  9. Pointers vs. Multi-dimensional Arrays
  10. Command-line Arguments
  11. Pointers to Functions
  12. Complicated Declarations

Structures

  1. Basics of Structures
  2. Structures and Functions
  3. Arrays of Structures
  4. Pointers to Structures
  5. Self-referential Structures
  6. Table Lookup
  7. Typedef
  8. Unions
  9. Bit-fields

Input and Output

  1. Standard Input and Output
  2. Formatted Output: printf
  3. Variable-length Argument Lists
  4. Formatted Input: scanf
  5. File Access
  6. Error Handling: stderr and exit
  7. Line Input and Output
  8. Miscellaneous Functions