Fundamentals of Computer Programming 21CSH-101
Fundamentals of Computer Programming 21CSH-101
N H
1 0 2 4 0 4 6 PC
Course Code(s)
PRE-REQUISITE Basic knowledge of Mathematics
CO-REQUISITE Fundamentals of Computer Science 21CSTXXX
ANTI-REQUISITE None
a. Course Description
The course begins with the introduction to Basic concepts of programming and its applications in
numerous fields. After covering fundamentals, students will learn how to apply the more complex
concepts including loops and arrays in order to solve the complex real-world problems.
b. Course Objectives
i. The course aims to provide exposure to problem-solving through programming.
ii. The course aims to raise the programming skills of students via logic building capability.
iii. With knowledge of C programming language, students would be able to model real world problems.
c. Course Outcomes
CO1 Remember the concepts related to fundamentals of C language, draw flowcharts and write
algorithm/pseudocode.
CO2 Understand the way of execution and debug programs in C language.
CO3 Apply various constructs, loops, functions to solve mathematical and scientific problem.
CO4 Analyze the dynamic behavior of memory by the use of pointers.
CO5 Design and develop modular programs for real world problems using control structure and selection structure.
d. Syllabus Theory
UNIT-1 INTRODUCTION TO BASIC BUILDING BLOCKS TO PROGRAMMING Contact Hours:10
Introduction Flow charts and Algorithms, Memory layout of a C program.
Fundamentals of C Features & Applications of C language, structure of writing a C Program, I/O functions in C,
Indentation, Comments, Header Files, Data Types, Constants and Variables, Operators,
Expressions, Evaluation of expressions, Type Conversion, Precedence and Associativity.
Decision Control Decision making statements (if, if-else, if-else-if, switch), nesting of decision control structures.
structure in C
UNIT-2 DEALING WITH REAL-WORLD PROBLEMS Contact Hours:10
Loop Control structure Looping statements (for, while, do-while), nested loop, use of jumping statements (goto, break,
in C continue).
Array & String Concepts of array, one- and two-dimensional arrays, declaration and initialization of arrays,
searching and sorting, string handling, string storage.
Functions Concepts of library functions, Built-in-string functions, user defined functions, prototypes,
definition of function, parameters types, parameter passing, calling a function, recursive
function, Macros.
UNIT-3 HANDLING HETEROGENEOUS DATA AND MEMORY Contact Hours:10
MANAGEMENT
Pointers Pointers: Basics of pointers, double pointer, pointer and array, pointer to array, array of
pointers, functions returning a pointer, storage classes.
Structures Structure: Basics of structure, structure members, structure vs. union, accessing structure
members, nested structures, array of structures, structure and functions, structures and
pointers.
Dynamic memory Introduction to Dynamic memory allocation, malloc, calloc, realloc.
allocation
Self-Study Topics:
Advance Topics:
TEXT BOOKS
i. T1 Programming in ANSI C by E. Balaguruswamy, Tata McGraw Hill, 2nd Edition, 2017.
ii. T2 Programming in C Ansi standard, by Yashwant Kanetkar, BPB Publications, 2010.
REFERENCE BOOKS
i. R1 Programming with C (Schaum's Outline Series) by Byron Gottfried Jitender Chhabra, Tata McGraw Hill, 4th
Edition, 2017.
ii. R2 C Programming Language by Brian W. Kernighan, Dennis Ritchie, Pearson education, 2nd Edition, 2015.
iii. R3 C How to program by Harvey Deital, 8th edition, 2011.
f. Syllabus Practical
8 8.1 WAP to read an array of elements and print the same in the reverse order along with their addresses.
8.2 Write a function code that is returning pointer to the larger value out of two passed values.
9 9.1 Define a structure type, personal, that would contain person name, date of joining and salary. Using this
structure, write a program to read this information for one person from the key board and print the same
on the screen.
9.2 What will the difference if above program is going to be implemented through union. Implement the
same program through union and differentiate the output as well as memory allocation.
10 10.1 WAP to store a character string in block of memory space created by malloc and then modify the same
to store a large string.
CO1 2 2 2 0 0 0 0 0 1 0 0 2 2 0
CO2 2 2 2 0 0 0 0 0 1 0 0 2 2 0
CO3 3 3 3 0 0 0 0 0 2 0 1 3 3 0
CO4 3 3 3 0 0 0 0 0 2 0 2 3 3 0
CO5 3 3 3 2 0 0 0 0 2 0 2 3 3 0