Course Credit: 3
Review of basics: Basic i/o, data type, conditional logic, switch case, character, ascii value, reading and writing character, integer to character conversion
Operators: Arithmetic, relational, logical and bitwise operators, operator precedence and associativity, arithmetic expression evaluation, short cut operator.
Functions- i: Basic functions, void functions with no parameters
Loops: Looping basic, necessity of loops, while loop, loop condition, body, initialization, increment, for loops, part of for loops, do while loop, entry-controlled loops, exit controlled loops, example, formulating problems using loops.
Formatted i/o: Specifying width using format specifier in printf and scanf in details.
Nested Loop: Nesting of two loops, example, nesting of independent loops inside one, example, nesting of more than two loops.
Functions - ii: Functions with return type and trivial parameters, local and global variables, call by value, library functions/header files concept.
Arrays: Basics of array, necessity, declaration, accessing through indices, accessing using loops, initialization, example, two dimensional arrays, declaration, initialization, accessing through loops, example, multidimensional arrays, example.
Functions - iii: Passing arrays in a function as parameter, call by reference, recursion, scope visibility and lifetime of variable.
Strings: Basics, difference between string and character array, i/o, basic operations without using library functions, array of strings
String Library: Basic string operations, length, compare, concatenate, substring, reverse.
Structures: Basics, necessity, declaration, accessing, initialization, array of structures.
Pointers: Basics, uses, pointer operation, call by reference using pointers, pointer for 1d/2d/3d array, structure, pointer expression, array of pointers, function returning pointers.
Dynamic Memory Allocation: Basics, uses, malloc, free, calloc, realloc.
File operation: Basics, uses, file opening, closing, file i/o