C language syllabus
C Programming Syllabus – BCA 1st Year
Unit 1: Introduction to Programming
Overview of Computer Fundamentals
Types of Programming Languages (Machine, Assembly, High-level)
Introduction to C Language
Structure of a C Program
Compilation and Execution Process
C Character Set, Tokens, Keywords, Identifiers, Constants, Variables
Input/Output functions: printf(), scanf()
Unit 2: Operators and Expressions
Data Types in C
Operators: Arithmetic, Relational, Logical, Assignment, Increment/Decrement
Conditional/Bitwise Operators, sizeof, ?: operator
Type Conversion & Type Casting
Operator Precedence and Associativity
Unit 3: Control Structures
Decision Making: if, if-else, Nested if, switch-case
Looping: while, for, do-while
Jump Statements: break, continue, goto
Unit 4: Functions
Defining and Declaring Functions
Function Arguments & Return Values
Recursion
Scope & Lifetime of Variables (Local, Global, Static, Auto, Register)
Storage Classes
Unit 5: Arrays & Strings
1-Dimensional and 2-Dimensional Arrays
Array Initialization & Operations
Strings: Declaration, Initialization, String Handling Functions ( strlen, strcpy,
strcmp, etc.)
Unit 6: Pointers
Basics of Pointers
Pointer Arithmetic
Pointers and Arrays
Pointers to Functions
Dynamic Memory Allocation (malloc, calloc, free)
Unit 7: Structures & Unions
Defining Structures
Accessing Members, Array of Structures
Nested Structures
Difference between Structure and Union
Enumerations (enum) and typedef
Unit 8: File Handling
File Input/Output Functions (fopen, fclose, fprintf, fscanf, getc, putc)
Reading & Writing Text/Binary Files
File Modes (r, w, a, etc.)
Unit 9: Preprocessor & Miscellaneous
C Preprocessor Directives (#define, #include, #ifdef, #ifndef)
Command Line Arguments
Error Handling (basic)
Practical / Lab Work
Students typically perform 20–25 lab programs, such as:
Basic I/O programs
Decision & Looping (factorial, prime number, reverse number)
Arrays & Strings (sorting, searching, palindrome)
Functions & Recursion (Fibonacci series, GCD)
Pointers and File handling (read/write data)