Unit Details Lectures I Introduction: Types of Programming languages, History, features and application. Simple program logic, program development cycle, pseudocode statements and flowchart symbols, sentinel value to end a program, programming and user environments, evolution of programming models., desirable program characteristics. Fundamentals: Structure of a program. Compilation and Execution of a Program, Character Set, identifiers and keywords, data types, constants, variables and arrays, declarations, expressions, statements, Variable definition, symbolic constants. (Refer chapters 1 and 2) 12 II Operators and Expressions: Arithmetic operators, unary operators, relational and logical operators, assignment operators, assignment operators, the conditional operator, library functions. Data Input and output: Single character input and output, entering input data, scanf function, printf function, gets and puts functions, interactive programming. (Refer chapters 3 and 4) 12 III Conditional Statements and Loops: Decision Making Within A Program, Conditions, Relational Operators, Logical Connectives, If Statement, If-Else Statement, Loops: While Loop, Do While, For Loop. Nested Loops, Infinite Loops, Switch Statement Functions: Overview, defining a function, accessing a function, passing arguments to a function, specifying argument data types, function prototypes, recursion, modular programming and functions, standard library of c functions, prototype of a function: foo1lal parameter list, return type, function call, block structure, passing arguments to a function: call by reference, call by value. (Refer chapters 5 and 6) 12 IV Program structure: Storage classes, automatic variables, external variables, static variables, multifile programs, more library functions, Preprocessor: Features, #define and #include, Directives and Macros 12 Arrays: Definition, processing, passing arrays to functions, multidimensional arrays, arrays and strings. (Refer chapters 7, 8 and 9) V Pointers: Fundamentals, declarations, Pointers Address Operators, Pointer Type Declaration, Pointer Assignment, Pointer Initialization, Pointer Arithmetic, Functions and Pointers, Arrays And Pointers, Pointer Arrays, passing functions to other functions Structures and Unions: Structure Variables, Initialization, Structure Assignment, Nested Structure, Structures and Functions, Structures and Arrays: Arrays of Structures, Structures Containing Arrays, Unions, Structures and pointers. (Refer chapters 10 and 11)