This question paper evaluates the foundational understanding of C programming, problem-solving techniques, algorithmic thinking, memory management, and program structure. It is structured into three major sections (A, B, C) to assess students’ conceptual clarity, coding ability, analytical thinking, and application skills.
SECTION A — Short Answer Questions (2 × 7 = 14 Marks)
This section tests basic programming concepts through seven short questions.
Topics Covered:
1. Programming Theory Basics
Syntax and its importance in programming
Memory hierarchy based on access time
2. Language Elements
Operator vs. operand differences
Conditional operator with syntax & example
3. Program Tracing
Students must find the output of C code involving:
For loops
Modulus operator
Break statement
Pointer to void type
4. Recursion Concept
Role and importance of base case in recursive functions
This section checks the student’s ability to understand core concepts quickly and accurately.
SECTION B — Descriptive Questions (7 × choose any 3 = 21 Marks)
Students must attempt any three questions, each requiring detailed explanation or coding.
Topics include:
1. Storage Classes in C
auto
extern
static
register
Their scope, lifetime, and usage.
2. Type Casting & Type Conversion
Explanation with examples and programs demonstrating:
Implicit conversion
Explicit conversion
3. Pattern Printing
Logic building using loops to generate star patterns.
4. Recursion with Fibonacci Series
Writing and tracing a function that calls itself.
5. Data Structures & Macros
Short notes on:
Linked lists
Macros and their preprocessor role
This section evaluates coding skills, logic development, and understanding of advanced C concepts.
SECTION C — Long Answer Questions (7 marks each)
Each block contains two questions. Students must answer one question from each block.
Question 3 — Algorithms, Architecture, and Flowcharts
3(a) Digital Computer Architecture
Requires explanation of:
Input unit
Output unit
CPU (ALU + CU)
Memory unit
Storage types
How components work together
3(b) Algorithm & Flowchart
Students write an algorithm to find the greatest of three numbers and draw its flowchart.
Skills tested:
Logical steps
Structured thinking
Visual representation of program flow
Question 4 — Operators & Control Statements
4(a) Operator Precedence & Associativity
Explanation and examples of:
Arithmetic operators
Relational operators
Logical operators
Unary & assignment operators
4(b) Break Statement in Switch Case
Write a program to show how break prevents fall-through in switch-case structure.
Question 5 — Conditional Logic & Matrix Operations
5(a) Program to Check Prime Number
Tests fundamental logic building using loops and conditions.
5(b) Matrix Multiplication Program
Demonstrates understanding of:
2D arrays
Nested loops
Handling matrix dimensions properly
Question 6 — Arrays & Sorting Techniques
6(a) Greatest Element in Array
Using "array passing to function"—testing:
Call-by-value
Passing array as argument
Traversal logic
6(b) Bubble Sort
Define sorting, explain algorithm, and write program to sort values using bubble sort.
Question 7 — File Handling & Dynamic Memory Allocation
7(a) File Handling Concepts
Define file and modes such as:
r, w, a
r+, w+, a+
Binary modes
Program: write multiple lines to a text file.
7(b) calloc Function
Explain dynamic memory allocation using calloc(), and write program to compute sum of stored elements.