UNIT 1
Topic 1: Problem-Solving Methodology & Tools (PAC, Flowcharts, Pseudocode)
Core Concepts:
Define and explain the Problem Analysis Chart (PAC), Flowchart, Pseudocode, and Algorithm.
Compare interactive mode and script mode of execution with examples.
- Largest of three numbers.
- First 10 natural numbers.
- Simple interest calculation.
- Checking if a number is a palindrome.
- Sum of digits of a number.
- Temperature conversion from Celsius to Fahrenheit.
- Generating the Fibonacci series.
- Counting vowels in a string.
Topic 2: C Fundamentals & Execution Flow
Explain the step-by-step execution process of a C program using a detailed block diagram.
Explain the types of errors in C (Syntax, Logical, Runtime) with examples and illustrative diagrams.
Topic 3: Data Types, Variables, Constants & Operators
Data Types & Variables: Write a detailed note on basic data types, variables, and constants with classification tables and examples.
Operators in C: Explain arithmetic, logical, relational, and bitwise operators with code examples.
UNIT 2
Topic 1: Decision Control Statements
Explain all decision-making structures (
if,if-else,nested if-else,else-if ladder,switch) with syntax, flowcharts, and programs:
- Check if a number is positive, negative, or zero using
if-else. - Perform arithmetic operations (
+,-,*,/) usingswitch-case. - Detailed comparison:
if-elsevs.switchstatements with suitable examples.
Topic 2: Looping Control Structures
Explain looping structures (
while,do-while,for, nested loops) with syntax, flowcharts, and programs:
- Print the multiplication table of a number using a
whileloop. - Reverse a given number using a
do-whileloop. - Print prime numbers between 1 and 100 using a
forloop. - Generate star patterns/pyramids using nested loops.
Topic 3: Jump Statements & Integrated Menu-Driven Applications
Explain
break,continue,goto, andreturnstatements with code snippets demonstrating their impact inside loops.Integrated Problem: Develop a menu-driven simple calculator using loops,
switch,break, andcontinue.
UNIT 3
Topic 1: Modular Design, Prototypes & Function Mechanics
Explain the mechanics of a function call and execution flow in C.
Discuss modular programming benefits for testing, debugging, and software design.
Why are function prototypes essential in multi-file programs?
Explain the impact of global variables vs. static variables (preserving state between calls).
Topic 2: Recursion vs. Iteration
How recursion works internally using stack memory (with call stack diagram).
Compare iterative vs. recursive approaches for factorial (performance, memory usage, and suitability).
Topic 3: Function Programs (Iterative & Recursive)
- Find factorial of a number (Iterative vs. Recursive).
- Generate Fibonacci series (Iterative vs. Recursive).
- Calculate power of a number using recursion ($x^n$).
- Swap two numbers using Call by Value vs. Call by Reference (passing pointers/structures for performance).
- Check if a number is prime using a function.
- Calculate sum of digits using a function.
- Find largest among three numbers using functions.
- Count vowels in a string using a function.
UNIT 4
Topic 1: Pointers & Pointer Arithmetic
How pointer arithmetic varies for different data types (
int,float,char).Swap two numbers using pointers.
Array addition using pointer arithmetic.
Topic 2: Dynamic Memory Management
Static arrays vs. Dynamically allocated arrays (memory usage comparison).
How
malloc(),calloc(),free(), andrealloc()optimize array memory.Program: Dynamically allocate memory for an array and find its average.
Topic 3: Strings & Pointer Manipulation
Why null termination (
\0) is critical in string handling.String manipulation using pure pointer arithmetic (without array indexing
[]or<string.h>):
- Find length of a string (alternative to
strlen()). - Copy one string to another.
- Count vowels in a string using pointers.
- Input 5 strings and sort them alphabetically using an array of pointers.
Topic 4: Advanced Array Operations & Function Pointers
How 2D arrays are stored in memory (row-major order).
Display/print a matrix using pointer notation.
How function pointers enable callback mechanisms in modular design.
UNIT 5
Topic 1: User-Defined Data Types (Structures, Unions, Enumerations)
Structures: Definition, declaration, initialization, member accessing, array of structures, pointers to structures, and the arrow operator (
->).Unions: Definition, syntax, memory allocation, member accessing, and advantages over structures.
Enumerations (
enum): Syntax, default vs. assigned values, use cases, and advantages.Integrated Programs: Demonstrating structures (e.g., student record), unions, and enumerations in action.
UNIT 6
Topic 1: File Handling Operations & File Concepts
File Concepts: Differences between Text File and Binary File processing.
File Pointer Navigation: Explain
fseek(),ftell(), andrewind()with examples.Error Handling: How to detect and handle file opening/reading errors gracefully.
Topic 2: Text & Binary File Programs
- Read a text file and count the total number of words and lines.
- Read and display file contents line-by-line using
fgets(). - Search for a specific word in a text file and count its occurrences.
- Copy contents from one text file to another using character I/O (
fgetc()/fputc()). - Append user input text to an existing file.
- Store and retrieve student records using binary files with
fwrite()andfread()on an array of structures.

