CS1113: Introduction to Programming
Announcements:
Welcome to CS1113 Course page
The Class will strat from 28th July 2025 (Monday) in 5305.
Attendance is Mandetory in the Course.
IMPORTANT: Any malpractice will lead to F grade without any explanation.
Instructor
Class Timing and Venue:
Syllabus
Lexical Elements: Identifiers, keywords, integer constants, character constants, special characters, floating constants, enumeration constants, string literals, punctuations,
separates, white spaces, comments;
Basics, data types, operators and expressions: Variable names, declarations, data types and sizes, arithmetic operations, Relational and logical operations,
incremental and decremental operators, bitwise operators, assignment operators and expressions, Conditional expressions, Precedence and Order evaluation;
Data type Conversions: Conversion of characters and integers, conversion of floats and doubles, conversion of floating and integral types, conversion of unsigned integers, arithmetic conversions;
Control Flow: Statements and Blocks, If-Else, Else-if, nested if … else, Switch, ?: operator;
Loops: While, for, Do-While, Break, Continue, goto and labels;
Managing standard Input and standard output: Reading various data types through input, output various data types, formatted input, formatted output;
Arrays: Introduction, declaration of one-dimensional arrays, initialization of one-dimensional arrays, accessing of elements of one-dimensional arrays, declaration of two dimensional arrays,
initialization of two-dimensional arrays, accessing of elements of two-dimensional arrays, declaration of Multi-dimensional arrays, initialization of multi-dimensional arrays,
accessing of elements of multi-dimensional arrays;
Character arrays and String: Declaration and initialization of string variables, reading strings from standard input, writing strings to standard output, string functions, command line arguments;
Functions: Function Declarations, Function Definitions, Calling functions, function parameters, variable length parameter list functions, the main function, recursive functions,
static functions, nested functions;
Structures and Unions: Defining, declaring structures, accessing elements of structures, structure within structure, structures and function, Unions, Size of structures, bit fields;
Pointers Introduction: Declaring pointer variables, initialization of pointer variables, accessing the address of a variable, accessing a variable through its pointer, chain of pointers,
pointer expressions, pointer arithmetic;
Dynamic memory allocation: Allocating block of memory using malloc, allocating memory using calloc, releasing used space using “free”, Dangling Pointers;
Pointes and Arrays: Pointer notion and arrays, using malloc, using realloc, pointers and single dimensional arrays, pointers and multi-dimensional arrays, dynamically allocating memory for two dimensional array;
Pointers and Strings: String fundamentals, standard string operations, passing strings to functions, returning of strings;
Pointers and Structures: Introduction, memory allocation, deallocation, Using pointers to support data structures;
Linked Lists: Types of linked lists, creating a linked list, inserting an item, deleting an item, traversing linked list, deleting entire linked list;
Pre-processors: Overview, Header files, include syntax, include operation, search path, only-once headers; Macros: object-like macros, function-like macros,
macro arguments, concatenations, varadic macros, and macro pitfalls, conditional macros;
File management: Defining and opening a file, closing a file, inputoutput operations on files, error handling during IO operations, Random access to files;
Standard libraries: character handling, string and array utilities, search and sorting, pattern matching, input/output, mathematics, variable argument functions;
Text Books
[Ritchie] Brian W. Kernighan, Dennis M. Ritchie, “C Programming Language”, Prentice Hall Software Series, Second edition, 2015.
The GNU C Reference Manual
References
[Balaguruswamy] E. Balaguruswamy, “Programming in ANSI C” McGraw Hill, 9th edition, 2024.
[Kanetkar] Yashavant Kanetkar, “Let Us C: Authentic guide to C programming language”, 20th edition, bpb publication.
A. Kelly and I. Pohl, “A Book On C”, 4TH Edition, Pearson Education, 1999.
Stephen Kochan, Programming in C, Pearson Education (India), 2015, ISBN: 978-9332554665
Grade Calculation
Teaching Assistants
Classes
Lecture No | Date | Topic | Resources |
|
Project Presentation Schedule
Evaluation Schedule
|