PROGRAM CURRICULUM
B.TECH. –INFORMATION TECHNOLOGY
Regulations: VCE-R25
A9501 – Programming for Problem Solving
Teaching and Learning Scheme Assessment Marks
CI LI TW+SL
H C CIE SEE Total
L T P SL
45 0 0 45 90 3 40 60 100
Course Description
Course Overview
This course introduces the principles of problem-solving and programming through C language. It
begins with the basics of algorithms, flowcharts, and structured program design, enabling students to
develop logical thinking skills. Core programming concepts such as variables, operators, control
statements, arrays, and strings are covered to build a strong foundation. The course further explores
modular programming using functions and recursion, along with structures and unions for handling
complex data. Advanced concepts like pointers and dynamic memory management are introduced to
enhance program efficiency. File handling techniques are discussed for effective data storage and
retrieval. Fundamental searching and sorting algorithms are included to improve problem-solving
efficiency and performance analysis. By the end of the course, students will be able to design,
implement, and evaluate C programs that solve real-world computational problems systematically and
efficiently.
Course Pre/co-requisites
This course has no specific prerequisites or co-requisites.
Course Outcomes (COs)
Upon successful completion of the course, students will be able to:
CO1: Use basic programming constructs and control statements to design solutions for computational
problems.
CO2: Develop programs using arrays and strings to store and manipulate sequential data.
CO3: Implement modular programming using functions, pre-processor directives, structures, and
unions to manage complex data.
CO4: Make use of pointers and file handling to effectively manage and process data.
CO5: Choose appropriate searching and sorting technique to organize and retrieve data efficiently.
Course Syllabus
Problem Solving Techniques:
Algorithms- Algorithmic approach, characteristics of algorithm and Examples, Flowcharts- Definition,
Symbols and examples, Problem solving strategies: Top-down approach and Bottom-up approach.
Introduction to C: Structure of a C Program, Identifiers, Variables, Constants and Data Types.
Operators and Expressions. Precedence of operators and Evaluation of Expressions, Type conversions,
Formatted input and output. Control Statements: Conditional Statements- if, if else, nested if, else if
ladder and switch statements. Iterative or Loop statements- while, do while and for statements. Jump
statements- break, continue and goto statements.
Arrays and Strings: Arrays: Introduction, One Dimensional Arrays - Declaration and initialization,
Reading and Writing. Two Dimensional Arrays - Declaration and initialization, Reading and Writing.
Department of IT Page 5
PROGRAM CURRICULUM
B.TECH. –INFORMATION TECHNOLOGY
Regulations: VCE-R25
Manipulating elements of Arrays. Strings: Introduction, Declaration, and initialization, Reading and
writing, string handling functions, handling two dimensional strings,
Functions, Structures and Unions: Functions- Introduction, Function definition and Function call,
Categories of functions, Recursion, Limitations of recursive functions, storage classes, Passing Arrays
to functions, Common Pre-processor Directives. Structures- Definition, Declaration, and Initialization,
accessing structure members, Array of Structures, Arrays within structures, Structures and functions,
size of structures, Unions- Definition, Declaration, and Initialization, accessing Union member.
Pointers and Files: Pointers-Declaration, Initialization, Pointer to Pointer, Pointer Arithmetic, Parameter
Passing Techniques, Pointer to Arrays, Pointers to Structures. Files- Introduction, defining, opening, and
closing a File, Input / Output operations on Files, Random Access in files, Command line arguments.
Searching and Sorting: Time and Space Complexity, Searching- Linear Search and Binary Search,
Sorting- Bubble Sort, Selection Sort, Insertion Sort and Quick Sort.
Books and Materials
Text Book:
1. Gottfried, Byron S. Programming with C. 4th ed., McGraw-Hill Education (India), 2018.
2. Forouzan, Behrouz A., and Richard F. Gilberg. Computer Science: A Structured Programming
Approach Using C. 3rd ed., Cengage Learning (formerly Course Technology), 2007.
Reference Books:
1. Kanetkar, Yashavant P. Let Us C: Authentic Guide to C Programming Language. 20th ed., BPB
Publications, 2024.
2. Forouzan, Behrouz A., and Richard F. Gilberg. Computer Science: A Structured Programming
Approach Using C. 3rd ed., Thomson Learning (Course Technology/Cengage), 2007.
3. Padmanabham, P. C & Data Structures. 3rd ed., B.S. Publications, 2016.
4. Hanly, Jeri R., and Elliot B. Koffman. Problem Solving and Program Design in C. 8th ed., Pearson,
2015.
5. Hanly, Jeri R., and Elliot B. Koffman. Problem Solving and Program Design in C. 8th ed., Pearson,
2015.
6. Balagurusamy, E. Programming in ANSI C. 9th ed., McGraw-Hill Education India, 2024.
Department of IT Page 6