C++ is a powerful general-purpose programming language. It can be used to develop operating systems, browsers, games, and so on. C++ supports different ways of programming like procedural, object-oriented, functional, and so on. This makes C++ powerful as well as flexible.
MODULE-1
INTRODUCTION TO PROGRAMMING IN C++
Level 1:- Programming by Example in C++ Language:
- C++ character set,
- C++ Tokens
- Identifiers,
- Keywords,
- Constants,
- Operators.
- Structure of a C++ Program (include files, main function);
- Header files – iostream.h, iomanip.h; cout, cin;
- Use of I/O operators (<< and >>),
- Use of endl and setw(),
- Cascading of I/O operators,
- Error Messages;
- Use of editor, basic commands of editor, compilation, linking and execution;
- standard input/output operations from C language: gets(), puts() of stdio.h header file;
Level 2:- Data Types, Variables and Constants:
- Concept of Data types;
- Built-in Data types:
- Char,
- Int,
- Float and
- Double.
- Constants:
- Integer Constants,
- Character Constants (Backslash character constants – /n, /t ),
- Floating Point Constants,
- String Constants;
- Access modifier: const;
- Variables of built-in data types,
- Declaration/Initialization of variables,
- Assignment statement;
- Type modifier:
- signed,
- unsigned,
- long;
Level 3:- Operators and Expressions:
- Arithmetic operators (-,+,*,/,%),
- Increment and Decrement Operators (–,++),
- Relational operators (>,>=,<,<=,==,!=),
- Logical operators (!, &&, ||),
- Conditional operator: ?:
- Precedence of Operators;
- Expressions; Automatic type conversion in expressions,
- Type casting; C++ shorthand’s (+=, -=, *=, /=, %=);
Level 4:– Flow of control:
- Conditional statements:
- if-else,
- Nested if,
- switch..case..default,
- Nested switch..case,
- break statement (to be used in switch..case only)
- Loops
- while ,
- do – while ,
- for and
- Nested loops;
Level 5:- Structured Data Type: Array
- Declaration/initialization of One dimensional array,
- Inputting array elements,
- Accessing array elements,
- Manipulation of Array elements (sum of elements, product of elements, average of elements, linear search, finding maximum/minimum value);
- Declaration/initialization of a two-dimensional array,
- inputting array elements Accessing array elements,
- Manipulation of Array elements (sum of row elements)
Level 6:- String Manipulation
- Declaration/Initialization of a String
- string manipulations
- counting vowels/consonants/digits/special characters,
- case conversion,
- reversing a string,
- reversing each word of a string
- String and Character related Library functions: isalnum(), isalpha(), isdigit(), islower(), isupper(), tolower(), toupper(), strcpy(), strcat(), strlen(), strcmp(), strcmpi();
Level 7:- User Defined Functions:
- Defining a function;
- function prototype,
- Invoking/calling a function,
- passing arguments to function,
- specifying argument data types,
- default argument,
- constant argument,
- c all by value,
- call by reference,
- returning values from a function,
- calling functions with arrays,
- scope rules of functions and variables;
- local and global variables;
Level 8:- Mathematical and Other Functions:
- Header Files
- math.h
- stdlib.h
- Functions:
- fabs(),
- log(),
- log10(),
- pow(),
- sqrt(),
- sin(),
- cos(),
- abs(),
- randomize(),
- random() ;
Level 9: Event programming: Games as examples:
- General Guidelines:
- Initial Requirement,
- developing an interface for user (it is advised to use text based interface screen),
- developing logic for playing the game and developing logic for scoring points
MODULE-2
Level 1: Structures:
- Defining a Structure,
- Declaring structure variables,
- Accessing structure elements,
- Passing structure to Functions as value and reference argument/parameter,
- Function returning structure,
- Array of structures, passing an array of structure as an argument/ a parameter to a function;
Level 2: Object Oriented Programming:
- Concept of Object Oriented Programming –
- Data hiding, Data encapsulation,
- Class and Object,
- Abstract class and Concrete class,
- Polymorphism (Implementation of polymorphism using Function overloading as an example in C++);
- Inheritance,
- Advantages of Object Oriented Programming over earlier programming methodologies,
Level 3: Implementation of Object Oriented Programming concepts in C++:
- Definition of a class,
- Members of a class – Data Members and Member Functions (methods),
- Using Private and Public visibility modes, default visibility mode (private);
- Member function definition: inside class definition and outside class definition using scope resolution operator (::);
- Declaration of objects as instances of a class; accessing members from object(s),
- Array of type class,
- Objects as function arguments – pass by value and pass by reference;
Level 4: Constructor and Destructor:
- Constructor: Special Characteristics,
- Declaration and Definition of a constructor,
- Default Constructor,
- Overloaded Constructors,
- Copy Constructor,
- Constructor with default arguments;
- Destructor: Special Characteristics,
- Declaration and definition of destructor;
Level 5: Inheritance (Extending Classes)
- Concept of Inheritance,
- Base Class, Derived Class,
- Defining derived classes, protected visibility mode;
- Single level inheritance,
- Multilevel inheritance and
- Multiple inheritance, Privately derived,
- Publicly derived and
- Protectedly derived class, accessibility of members from objects and within derived class(es);
Level 6: Data File Handling:
- Need for a data file,
- Types of data files – Text file and Binary file;
- Basic file operations on text file:
- Creating/Writing text into file,
- Reading and Manipulation of text from an already existing text File (accessing sequentially);
- Binary File: Creation of file, Writing data into file, Searching for required data from file,
- Appending data to a file, Insertion of data in sorted file,
- Deletion of data from file,
- Modification of data in a file;
- Implementation of above mentioned data file handling in C++;
- Components of C++ to be used with file handling:
- Header file: fstream.h; ifstream, ofstream, fstream classes;
- Opening a text file in in, out, and app modes;
- Using cascading operators for writing text to the file and reading text from the file; open(), get(), put(), getline() and close() functions;
- Detecting end-of-file (with or without using eof() function);
- Opening a binary file using in, out, and app modes; open(), read(), write() and close() functions;
- Detecting end-of-file (with or without using eof() function); tellg(), tellp(), seekg(), seekp() functions
Level 7: Pointers:
- Declaration and Initialization of Pointers;
- Dynamic memory allocation/deallocation operators: new, delete;
- Pointers and Arrays: Array of Pointers, Pointer to an array (1 dimensional array),
- Function returning a pointer,
- Reference variables and use of alias;
- Function call by reference.
- Pointer to structures: Deference operator: *, ->; self referencial structures;
MODULE-3
DATA STRUCTURES
Level 1: Arrays:
- One and two Dimensional arrays:
- Sequential allocation and address calculation;
- One dimensional
array:
- Traversal,
- Searching (Linear, Binary Search),
- Insertion of an element in an array,
- deletion of an element from an array,
- Sorting
- Insertion,
- Selection,
- Bubble sort),
- concatenation of two linear arrays,
- merging of two sorted arrays;
Level 2: Stack (Array and Linked implementation of Stack):
- Operations on Stack (PUSH and POP) and its Implementation in C++,
- Converting expressions from INFIX to POSTFIX notation and evaluation of Postfix expression;
Level 3: Queue: (Circular Array and Linked Implementation):
- Operations on Queue
- Insert and
Delete and its Impl