MCA-103 Programming and Problem Solving in C Course Contents:
An overview: Problem identification, analysis, design, coding, testing & debugging, implementation, modification & maintenance; algorithms & flowcharts; Characteristics of a good program - accuracy, simplicity, robustness, portability, minimum resource & time requirement, modularization; Rules/ conventions of coding, documentation, naming variables; Top down design; Bottom-up design.
Fundamentals of C Programming: History of C; Structure of a C Program; Data types; Constant & Variable, naming variables; Operators & expressions; Control Constructs – if-else, for, while, do-while; Case switch statement; Arrays; Formatted & unformatted I/O; Type modifiers & storage classes; Ternary operator; Type conversion & type casting; Priority & associativity of operators.
Modular Programming: Functions; Arguments; Return value; Parameter passing – call by value, call by reference; Return statement; Scope, visibility and life-time rules for various types of variable, static variable; Calling a function; Recursion – basics, comparison with iteration, types of recursion- direct, indirect, tree and tail recursion, when to avoid recursion, examples.
Advanced Programming Techniques: Special constructs – Break, continue, exit(), goto & labels; Pointers - & and * operators, pointer expression, pointer arithmetic, dynamic memory management functions like malloc(), calloc(), free(); String; Pointer v/s array; Pointer to pointer; Array of pointer & its limitation; Function returning pointers; Pointer to function, Function as parameter; Structure – basic, declaration, membership operator, pointer to structure, referential operator, self referential structures, structure within structure, array in structure, array of structures; Union – basic, declaration; Enumerated data type; Typedef; command line arguments.
Miscellaneous Features: File handling and related functions; printf & scanf family;C preprocessor – basics, #Include, #define, #undef, conditional compilation directive like #if, #else, #elif, #endif, #ifdef
and #ifndef; Variable argument list functions.
1. Kerninghan & Ritchie “The C programming language”, PHI
2. Schildt “C:The Complete reference” 4th ed TMH.
3. Cooper Mullish “The Spirit of C”, Jaico Publishing House, Delhi
4. Kanetkar Y. “Let us C”, BPB.
5. Kanetkar Y.: “Pointers in C” , BPB
6. Gottfried : “Problem Solving in C”, Schaum Series
7. Jones, Harrow Brooklish “C Programming with Problem Solving”, Wiley Dreamtech India.
Note : Paper is to be set unit wise with internal choice