To acquaint the students with the basics of C programming.
Arrays : One dimensional arrays: array manipulation; searching, insertion, deletion of an element from an array; finding the largest/smallest element in an array; two dimensional arrays, addition/multiplication of two matrices, transpose of a square matrix; null terminated strings as array of characters, representation sparse matrices. Sorting arrays (Bubble Sort), Searching (Linear, Binary Search), Multiple-Subscripted Arrays.
Functions: top-down approach of problem solving, modular programming and functions, prototype of a function: parameter list, return type, function call, block structure, Passing arguments to a function: call by reference, call by value, arrays as function arguments.
Storage Classes and Scoping: Automatic, Register, External, Static, Scope of a Variable.
Structures and unions: Structure variables, initialization, structure assignment, nested structure, structures and functions, structures and arrays: arrays of structures, structures containing arrays, unions. Bit Manipulations and Enumerations: Introduction, Bitwise operators, Bit Fields, Enumerated Constants.
Pointers: address operators, pointer type declaration, pointer assignment, pointer initialization, pointer arithmetic, functions and pointers, arrays and pointers.
C characters and Strings: Introduction, Fundamentals of Strings and characters, Character and String Handling Library, String conversions and comparison functions.
File processing: Concept of files, Opening and closing a stream, open modes. Reading and writing to/from a stream. Predefined streams: stdin, stdout. Stream manipulation: fgetc(), fputc(), fgets() and fputs() functions. Raw input/output: fread() and fwrite() functions. Preprocessor Directives #include, #define, Macros.
1. Yashwant Kanetkar, “Working with C”, BPB Publications.
2.E.Balagurusami, “Programming in ‘ANSI C’”, TMH Publications.
1. H.M.Deitel & P.J.Deitel, “How to program in ‘C’”, 3rd Edition, Pearson Education, 2001.
2. B.Kernighan & D.Ritchie “C Programming Language”, 2nd Edition, Prentice-Hall, 1988.
3. S. Lipschutz, “C Programming”, Schaum’s outline series, Tata McGraw Hill Edition.