Department of Artificial Intelligence and Data Science
C Programing L T P SL C
45 0 30 4 4
5
Pre-requisite: Nil SDG: 3,4,7,9,12
Course Objectives:
1. To understand the various algorithmic techniques for solving problems.
2. To explore the concept of the various constructs of a programming language.
3. To explain the Functions and pointers.
4. To analyze the Structures and Union.
5. To examine various File handling concepts.
Course Content:
UNIT I BASICS OF C PROGRAMMING 9
Introduction to programming paradigms, Applications of C Language - Structure of C program, C
programming: Data Types ,Constants, Enumeration Constants, Keywords ,Operators: Precedence,
Associativity and Bit manipulations - Expressions - Input/output statements, Assignment
statements – Decision making statements - Switch statement – Looping statements –
Preprocessor directives - Compilation process.
UNIT II ARRAYS AND STRINGS 9
Introduction to Arrays: Declaration, Initialization, One dimensional array, Two dimensional arrays,
String operations: length, compare, concatenate, copy Selection sort, linear and binary search.
UNIT III FUNCTIONS AND POINTERS 9
Modular programming, Function prototype, function definition, function call, Built-in functions
(string functions, math functions) Recursion, Binary Search using recursive functions,
Pointers ,Pointer operators, Pointer arithmetic –Types of Pointers- Arrays and pointers – Array of
pointers – memory leaks-Parameter passing: Pass by value, Pass by reference.
UNIT IV STRUCTURES AND UNION 9
Structure - Nested structures – Pointer and Structures – Array of structures – Self referential
structures – Dynamic memory allocation - Singly linked list – typedef – Union – Storage classes
and Visibility.
UNIT V FILE PROCESSING 9
Files – Types of file processing: Sequential access, Random access – Sequential access file -
Random access file - Command line arguments.
TOTAL LECTURE HOURS 45 Hours
Course Outcome: On completion of the course, students will be able to
CO1: Recollect various programming constructs and to develop C programs. K1
CO2: Implement different operations on arrays and strings. K2
CO3: Implement modular programming, recursion, and efficient memory management K3
techniques.
1
Department of Artificial Intelligence and Data Science
CO4: Implement programs with structures and pointers. K3
CO5: Demonstrate the use of sequential and random-access file processing with the help K3
of programs.
Text Books:
1. ReemaThareja, “Programming in C”, Oxford University Press, Second Edition, 2016.
2. Kernighan, B.W and Ritchie,D.M, “The C Programming language”, Second Edition, Pearson
Education, 2015.
Reference Books:
1. Paul Deitel and Harvey Deitel, “C How to Program with an Introduction to C++”, Eighth
Yashwant Kanetkar, Let us C, 17th Edition, BPB Publications, 2020.
2. Byron S. Gottfried, “Schaum’s Outline of Theory and Problems of Programming with C”,
McGraw-Hill Education, 1996.
List of Experiments:
1. Calculate and display the area of a rectangle using the input values entered by the user in a C
program.
2. Sort an array of integers using the selection sort technique in a C program.
3. Concatenate two strings entered by the user and display the resultant string in a C program.
4. Determine the factorial of a number using recursion in a C program.
5. Swap two numbers using both call by value and call by reference in a C program.
6. Create a structure named student with fields for roll number, name, and marks in three
subjects. Initialize the structure with values entered by the user and display the details in a C
program.
7. Read data from a text file and display it on the screen in a C program.
8. Implement a singly linked list and display its elements in a C program.
9. Open a binary file, write data to it, and read data from it in a C program.
10. Implement a stack using an array and perform push, pop, and display operations in a C
program.
TOTAL PRACTICAL HOURS 30 Hours
TOTAL TERM WORK AND SELF LEARNING HOURS 45 Hours
TOTAL NO. OF HOURS PER SEMESTER 120 Hours
List of Equipments: (for batch of 30 students
1. Standalone Computer, 30 nos
2. OS-Windows/Linux
3. Compilers: GCC,VS Code,Code Blocks.
Web Links:
1. https://youtu.be/JpN0GTJOxTk