Course Code BCA-101
Category Core Course
Course Title Programming in C
L T P Credit Semester
Scheme & Credits
3 1 0 4 I
Pre-requisites High School Education
……………...………………………………………………………………………………………………..
Programming in C
Lectures: 40
………………………………………………………………………………………………………………
Course Objectives:
➢ A student will gain a thorough understanding of the fundamentals of C programming.
➢ A student will be able to code, compile and test C programs.
➢ Be able to take up Systems programming or Advanced C programming course.
➢ Although this course does not deal with Object Oriented Programming methodology, this will
help the student in building the necessary foundation for undertaking a course in C++ and OOP.
Module I: (Lecture 09)
Problem Solving and Programming Concepts: Problem Solving in Everyday Life, Types of Problem,
Problem Solving with Computers.
Overview of C: History of C, Importance of C, Structure of C program, Sample of C programs, C Tokens,
Keywords, Identifier, Constant, Variable, Data types.
Operators and Expressions: Different types of operators – arithmetic operators, relational operators,
logical operators, assignment operators, increment and decrement operators, bitwise operators,
conditional operators and special operators, Arithmetic expressions – precedence of arithmetic operators,
Type conversions in expressions.
Module II: (Lecture 07)
Decision control and Branching: Decision making with if statement – Simple if statement, if -else
statement, Nesting of if-else statement, else-if ladder, Switch statement, Application of Conditional
Operator, GOTO statement.
Decision control and Looping: while statement, do while statement, for statement, Jumps in loops.
Module III: (Lecture 09)
Arrays: One - dimensional arrays, Declaration of one – dimensional arrays, Two –dimensional arrays,
Declaration of two – dimensional arrays, Multi – dimensional arrays.
Character Arrays and String: Declaring and initializing string variables, Reading string from terminal,
writing string to screen, Putting string together, Comparison of two strings, String handling functions,
other features of strings.
Module IV: (Lecture 06)
Function: User defined functions, A multi – function program, Definition of function, Function calls,
Function declaration, Category of functions, Nesting of functions, Recursion, Passing arrays to functions,
Passing strings to functions.
Module V: (Lecture 09)
Structures and Unions: Defining a structure, Declaring structure variables, Accessing structure members,
Arrays of structures, Arrays within structures, Structures within structures, Structures and functions,
Union.
Pointers: Understanding pointers, Accessing the address of a variable, Declaring pointer variables, Pointer
expressions, Array of pointers, Pointers to function, Pointers and structures.
File Management: Defining and opening a file, closing a file, Input/output operations on files, Error
handling during I/O operations.
Course outcomes
After course completion the students will have the:
➢ Understanding a functional hierarchical code organization.
➢ Ability to define and manage data structures based on problem subject domain.
➢ Ability to work with textual information, characters and strings.
References:
TEXT BOOK
1. E. Balaguruswamy, “Programming in ANSI C”, Tata McGraw-Hill, 7th Edition, 2017.
2. Byron Gottfried, “Programming with C (Schaum's Outlines Series)”, McGraw-Hill, 3rd Edition,
2017.
REFERENCE BOOK
3. Brian W. Kernighan and Dennis M. Ritchie, “The C Programming Language”, Pearson Education
India, 2nd Edition, 2015
4. Yashwant Kanetkar, “Let us C”, BPB Publications, 15th Edition, 2016.
……………………………………………………………………………………………………………