ADVANCED PROGRAMMING IN C

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

The course will enable the students to

  1. Acquaint the students with the advanced concepts of C programming.
  2. Provide the knowledge of linear data structures like array, structures and Union in C

Course Outcomes (COs):

Learning Outcome (at course level)

Learning and teaching strategies

Assessment Strategies

CO 54 Implement arrays with their applications

CO 55 Demonstrate functions and parameter passing options in c

CO 56 Design programs using Functions, Pointers, Structures and Unions in C language.

CO 57 Design File handling programs and develop basic understanding about File Handling.

Approach in teaching:

Interactive Lectures, Discussion, Tutorials, Reading assignments, Demonstration, Team teaching

 

Learning activities for the students:

Self-learning assignments, Effective questions, Seminar presentation, Giving tasks

Class test, Semester end examinations, Quiz, Solving problems in tutorials, Assignments, Presentation

 

9.00
Unit I: 

Revision of C 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, Sorting arrays (Bubble Sort), Searching (Linear, Binary Search), Multiple-Subscripted Arrays.

9.00
Unit II: 

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: 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:  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: 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: