Advanced Programming in C

Paper Code: 
CBCA 203
Credits: 
03
Periods/week: 
03
Max. Marks: 
100.00
Objective: 

To acquaint the students with the basics of C programming.

9.00
Unit I: 
Revision of Basics

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.

9.00
Unit II: 
Functions, Storage Classes and Scoping

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.

9.00
Unit III: 
Structures and Unions

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.

9.00
Unit IV: 
Pointers, C Characters & Strings

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.

9.00
Unit V: 
File Processing

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.

ESSENTIAL READINGS: 

1. Yashwant Kanetkar, “Working with C”, BPB Publications.

2.E.Balagurusami, “Programming in ‘ANSI C’”, TMH Publications.

REFERENCES: 

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.

 

 

Academic Year: