PROGRAMMING FOR PROBLEM SOLVING | KCS201T
B.Tech (Semester II) – Theory Examination 2021–22
This document consists of the complete and original B.Tech (Semester II) Theory Examination Question Paper for Programming for Problem Solving (KCS201T) for the academic year 2021–22. The paper is designed to thoroughly assess a student’s understanding of the C programming language, problem-solving skills, algorithmic thinking, memory concepts, sorting, flowcharts, data structures basics, dynamic memory allocation, and file handling.
The question paper follows the latest university pattern and covers fundamental to moderately advanced concepts of C programming.
The paper is divided into three major sections—each focusing on different skill levels: basic conceptual knowledge, applied programming logic, and full-length descriptive/problem-solving questions.
SECTION A – Short Answer / Conceptual Questions (10 × 2 = 20 Marks)
This section tests students' basic understanding of C programming and computational concepts.
Key topics include:
Difference between void and int data types
Memory hierarchy pyramid
Syntax and use of ternary operator
Advantages of switch statement
Output-based questions testing pointer arithmetic in printf()
Definition and types of functions
Accessing array elements using alternative indexing (0[arr])
Time & space complexity (with Bubble Sort complexity)
sizeof(void*) output
Need of free() function in dynamic memory allocation
These questions ensure the student understands the syntax, terminology, memory concepts, and program behavior in C.
SECTION B – Applied Programming & Logic Development (Any 3 × 10 = 30 Marks)
This section evaluates the student’s ability to apply concepts through flowcharts, programs, and explanations.
Major topics covered:
Flowcharts & Algorithms
Symbols used in flowcharts
Drawing a flowchart to reverse a number
Type Conversion & Casting
Implicit and explicit type conversion with examples
Pattern Printing Logic
Writing nested loops to print numeric patterns
Sorting Techniques
Bubble Sort explanation and program
Command Line Arguments
Working principle and example program
This section checks the student’s skill in writing programs, explaining logics, and using C syntax effectively.
SECTION C – Long Descriptive / Full Programs (4 × 10 = 40 Marks)
Each subsection contains two questions; the student attempts one from each.
These are detailed questions requiring full programs, diagrams, or long explanations.
Includes:
3. Storage & Architecture
Storage classes in C: automatic, external, static, register
Digital computer architecture diagram: CPU, memory, I/O, buses
4. Operators & Switch Case
Types of operators: arithmetic, relational, logical, bitwise, assignment, conditional
Program to make a calculator using switch-case
5. Pattern Programs
Printing star patterns using nested loops
Fibonacci series using recursive function
6. Sorting & Matrices
Selection sort algorithm + program
Multiplication of two 2D arrays
7. Dynamic Memory & File Handling
Dynamic memory allocation (malloc, calloc, realloc, free) with example
Program to copy content from one file to another and count characters
This section assesses coding ability, logic structuring, algorithm analysis, and clear code explanation.
Sample Questions (1–2 from the actual paper)
As requested, here are two included sample questions to represent the level of difficulty:
Sample Question from Section A:
“Differentiate between void and int datatypes.”
— A fundamental question checking data type understanding.
Sample Question from Section C:
“Write a program to allocate memory dynamically. Take inputs from the user and find the sum of all elements.”
— A full program-based problem testing dynamic memory allocation concepts.
Overall Coverage of the Question Paper
This question paper covers almost every essential topic from the C programming syllabus, including:
Programming Concepts
Data types, variables, operators
Conditional statements & loops
Functions (recursive & non-recursive)
Storage classes
Data Handling
Arrays
Multi-dimensional arrays
Strings
Pointers
Dynamic memory allocation
Algorithms
Time & space complexity
Searching & sorting (Bubble Sort, Selection Sort)
File Handling
Reading & writing files
Copying content between files
Problem Solving Techniques
Flowcharts
Pattern printing
Mathematical computations
This comprehensive coverage ensures students are evaluated on both theoretical understanding and practical coding abilities.