Anna University, Chennai
Department of Electrical and Electronics Engineering
Subject Code: CS3353
Subject Name: C Programming and Data Structures
Lecture Notes - All Units
Unit 1: Introduction to C Programming
1.1 Overview of C Programming Language
History and Evolution
Characteristics of C Language
Structure of a C Program
1.2 Constants, Variables, and Data Types
Constants: Numeric, Character, and String Constants
Variables: Declaration, Definition, and Initialization
Data Types: Primitive and Derived Data Types
1.3 Operators and Expressions
Arithmetic Operators
Relational Operators
Logical Operators
Assignment Operators
Conditional Operators
Bitwise Operators
Operator Precedence and Associativity
1.4 Decision Making and Branching
if, if-else, nested if
switch-case statement
Conditional Operator (? : )
1.5 Looping Constructs
while loop
do-while loop
for loop
Nested Loops
Loop Control Statements: break, continue
1.6 Arrays
Declaration, Initialization, and Accessing Array Elements
Multi-dimensional Arrays
Strings and String Manipulation
Array of Strings
Unit 2: Functions and Pointers
2.1 Functions
Function Declaration and Definition
Function Prototypes
Call by Value and Call by Reference
Recursion
Scope Rules and Storage Classes
2.2 Pointers
Introduction to Pointers
Pointer Declaration and Initialization
Pointer Arithmetic
Pointers and Arrays
Pointers and Functions
2.3 Dynamic Memory Allocation
malloc(), calloc(), realloc(), free() functions
Dynamic Allocation of Arrays and Structures
Unit 3: Structures and Unions
3.1 Structures
Definition and Declaration of Structures
Accessing Structure Members
Structure Initialization
Arrays of Structures
Nested Structures
3.2 Unions
Declaration and Initialization of Unions
Accessing Union Members
Differences between Structures and Unions
Unit 4: File Handling in C
4.1 File Operations
Opening and Closing Files
Reading from and Writing to Files
File Input/Output Operations
Random Access of Files
4.2 Command Line Arguments
argc and argv Parameters
Passing Command Line Arguments to Programs
Applications of Command Line Arguments
Unit 5: Introduction to Data Structures
5.1 Basic Concepts
Overview of Data Structures
Classification of Data Structures
Operations on Data Structures
5.2 Arrays and Linked Lists
Introduction to Arrays and Linked Lists
Representation and Operations
Applications of Arrays and Linked Lists
5.3 Stacks and Queues
Introduction to Stacks and Queues
Implementation using Arrays and Linked Lists
Applications of Stacks and Queues
5.4 Trees
Introduction to Trees
Binary Trees and Binary Search Trees
Tree Traversal Techniques: Inorder, Preorder, Postorder
Applications of Trees
5.5 Graphs
Introduction to Graphs
Representation of Graphs
Graph Traversal Techniques: Depth First Search (DFS) and Breadth First Search (BFS)
Applications of Graphs
These lecture notes provide a comprehensive understanding of C Programming and Data Structures, essential for students pursuing Electrical and Electronics Engineering at Anna University, Chennai. Each unit is carefully structured to cover fundamental concepts, followed by advanced topics to build a strong foundation. With a total of 170 pages in PDF format, these notes serve as a valuable resource for both theoretical understanding and practical implementation.
CS3353-LN Notes.pdf (Size: 4.75 MB / Downloads: 3)