Head office, Rana Pratap Bagh, Delhi011 2721 1512+91 97116 99511

Programming & Web Development

C and C++ programming

The languages most students learn first: variables, loops and functions, and in C++, classes and objects.

Suits: Students from class 10 onwards

Duration, fees and batch timings are quoted by the head office or your centre.

Two students writing code together on a laptop and a desktop computer

2 study books in this course

  • C Programming
  • C++ Programming
Lessons
14
Practice questions
70
Free ebooks
7

About the course

What the C and C++ course is about

C is the language most students learn first, and C++ builds on it. The course starts with the structure of a C program and works through operators, decisions, loops, arrays, strings, functions, pointers, structures and simple file handling.

C++ then adds object-oriented programming: classes and objects, constructors and destructors, inheritance, virtual functions, overloading, templates, the STL containers and exceptions.

What you will practise

Drawn from the lessons of the study books below.

  1. 01

    Write, compile and run C programs with variables, operators, printf and scanf

  2. 02

    Control a program with if, else and switch, and for, while and do-while loops

  3. 03

    Work with arrays, strings, functions and pointers

  4. 04

    Use structures, and read and write simple files

  5. 05

    Design C++ classes with constructors, destructors, inheritance and virtual functions

  6. 06

    Use overloading, templates, vector, string and map, and handle exceptions

What you will learn

2 subjects, 14 lessons

Every lesson of the study books that come with this course in the student portal, with the key points of each lesson and exercises to try. Your centre gives you the syllabus, the duration and the fee.

Subject 1 of 2

C Programming

Learn to write, compile and run C programs, from data types, operators and decisions to loops, arrays, strings, functions, pointers, structures and simple file handling.

  • 7 lessons
  • About 23 min of reading
  • 35 practice questions
  • 25 key terms
  1. 1Structure of a C Program and Data Types4 min read · 5 key points · 3 exercises

    Key points

    • Every C program starts running at the main function.
    • Including stdio.h gives your program access to printf and scanf.
    • Statements end with a semicolon, and C is case-sensitive.
    • A char is always 1 byte; check the size of other types on your compiler with sizeof.
    • An identifier may use letters, digits and underscores, must not start with a digit and must not be a keyword.

    Try this

    1. Type the Namaste program from this lesson into a file named hello.c with your own name in it, compile it with gcc -std=c11 hello.c -o hello and run it; then delete one semicolon, compile again and copy the error message the compiler prints into your notebook.
    2. Write a program that declares one variable each of type char, int, float and double with values of your choice, prints all four with printf, and prints sizeof for each type with the %zu specifier; compare the sizes you get with the table in this lesson.
    3. Write a bill program for a stationery shop that keeps the price of a pen in a const double and the quantity in an int and prints the amount with two decimal places; then add a line that tries to give the const variable a new value and note the error the compiler reports.
  2. 2Operators, printf and scanf3 min read · 4 key points · 3 exercises

    Key points

    • Dividing one integer by another drops the fractional part, so 7 / 2 is 3.
    • The % operator gives the remainder and works only with integers.
    • x++ uses the old value and then adds 1; ++x adds 1 first.
    • In scanf, put & before ordinary variables and read a double with %lf.

    Try this

    1. Write a program that reads two whole numbers with scanf and prints their sum, difference, product, integer quotient and remainder on separate lines; run it with 17 and 5 and check that the quotient is 3 and the remainder is 2.
    2. Write a program that reads a temperature in Celsius into a double with %lf, converts it to Fahrenheit with F = C * 9 / 5 + 32, and prints the result with %.2f; test it with 37 and confirm that it prints 98.60.
    3. In your notebook, predict the value of 7 / 2, -7 / 2, 17 % 5, 2 + 3 * 4, (2 + 3) * 4 and 7.0 / 2, and the values of a, b and c after int a = 5; int b = a++; int c = ++a; then print them all in a program, using %.1f for 7.0 / 2, and compare.
  3. 3Making Decisions: if, else and switch3 min read · 5 key points · 3 exercises

    Key points

    • Any non-zero value is true in C, and 0 is false.
    • Use == to compare; a single = assigns a value.
    • An else-if ladder runs only the first block whose condition is true.
    • Case labels in a switch must be integer or character constants.
    • Without break, a switch case falls through into the next case.

    Try this

    1. Write a program that reads a student's percentage into a double with %lf and prints a grade with an else-if ladder: A for 75 and above, B for 60 and above, C for 45 and above, D for 33 and above, and Fail below 33; test it with 82, 60, 44.5 and 20.
    2. Write a menu-driven calculator with switch that reads two numbers and a choice from 1 to 4, prints the result, prints a warning instead of dividing when the second number is 0, and prints Invalid choice for any other number; then remove one break and note how the output changes.
    3. Write a program that reads a year and uses && and || in one if condition to print whether it is a leap year (divisible by 4 but not by 100, or divisible by 400), and test it with 1900, 2000, 2024 and 2025.
  4. 4Loops: for, while and do-while3 min read · 4 key points · 3 exercises

    Key points

    • Use for when the number of rounds is known in advance.
    • while checks its condition first, so its body may run zero times.
    • do-while checks its condition last, so its body always runs at least once.
    • break leaves the loop; continue skips to the next round.

    Try this

    1. Write a program that prints the multiplication table of a number entered by the user with a for loop, then write a second version that uses a while loop, and check that both print the same ten lines.
    2. Write a program that reads a whole number and uses a while loop to reverse it and count its digits, so that 4523 prints 3254 and 4 digits; then wrap the whole program in a do-while loop that asks whether to try another number (1 for yes) after each result.
    3. Use nested for loops to print a right-angled triangle of stars five rows high, then change the inner loop so that it prints the number pattern 1, 12, 123, 1234 and 12345 on five separate lines.
  5. 5Arrays and Strings3 min read · 4 key points · 3 exercises

    Key points

    • Array indexes start at 0, so an array of size n ends at index n - 1.
    • C does not check array bounds; going outside them is undefined behaviour.
    • A string is a char array ending in the null character, so it needs one extra place.
    • Compare strings with strcmp, which returns 0 when they are equal.

    Try this

    1. Write a program that reads the marks of five students into an int array and prints the total, the average to two decimal places, the highest mark and the lowest mark.
    2. Write a program that reads one word with scanf %s into a char array of size 30, prints its length with strlen, and then prints the word backwards with a for loop that runs from the last index down to 0.
    3. Write a program with two char arrays holding your first name and surname that builds the full name in a third char array large enough for both names and the space (copy the first name in with strcpy, then add the space and the surname with strcat), and prints it with its length; then use strcmp to check whether a password typed by the user matches a stored one.
  6. 6Functions and Pointers4 min read · 5 key points · 3 exercises

    Key points

    • A prototype declares a function's name, return type and parameters before it is used.
    • C passes arguments by value, so a function works on copies.
    • The & operator gives an address; the star operator reads or writes the value at an address.
    • Passing addresses lets a function such as swap change the caller's variables.
    • A recursive function must have a base case.

    Try this

    1. Write a function int isEven(int n) that returns 1 for an even number and 0 for an odd one, put its prototype above main, and call it in a loop to print whether each number from 1 to 10 is even or odd.
    2. Write a recursive function that returns the factorial of n and a second recursive function that returns the sum of the digits of a number, each with a clear base case; check that factorial(5) gives 120 and that the digit sum of 4523 is 14.
    3. Type the swap function from this lesson, then write a version called swapCopy that takes two plain int parameters instead of pointers; call both on x = 3 and y = 8 and print x and y after each call to show that only the pointer version changes them.
  7. 7Structures and File Handling Basics3 min read · 5 key points · 3 exercises

    Key points

    • A structure groups members of different types into one new type.
    • Use the dot operator with a structure variable and the arrow operator with a pointer to one.
    • Always check that fopen did not return NULL before using the file.
    • Mode "w" erases an existing file, while "a" adds to the end of it.
    • Close every file with fclose when you have finished with it.

    Try this

    1. Define a struct Student with roll number, name and percentage, read three students from the keyboard into an array of structures, and print the record with the highest percentage; then write a function void addGrace(struct Student *p) that adds 2 to the percentage using the arrow operator and call it for the first student.
    2. Write a program that asks for an item name, quantity and rate and adds one line to a file named sales.txt using fopen with mode "a" and fprintf; run it three times and open sales.txt in a text editor such as Notepad to check that all three lines are there.
    3. Write a program that opens sales.txt with mode "r", prints a message and stops if fopen returns NULL, and otherwise reads the file line by line with fgets, prints each line with a line number in front and closes it with fclose; then change the writing program to mode "w", run it once, and note what happened to the old lines.
Glossary: 25 key terms of C Programming
Array
A fixed-size group of values of the same type stored in consecutive memory locations under one name, with each element reached by an index that starts at 0.
break
A statement that immediately ends the innermost loop or switch that contains it, so execution continues with the statement after that loop or switch.
Compiler
A program, such as GCC, that translates C source code into machine code the computer can run.
Conditional operator
The ?: operator, which chooses one of two values in a single expression depending on whether a condition is true or false.
Data type
The kind of value a variable can hold, such as char, int, float or double, which also decides how much memory the variable uses.
Dereferencing
Using the star operator on a pointer to read or change the value stored at the address the pointer holds.
Escape sequence
A backslash followed by a character that stands for something hard to type inside a string, such as \n for a new line or \t for a tab.
FILE pointer
A pointer of type FILE * returned by fopen, which a program passes to functions such as fprintf, fgets and fclose to work with an open file.
Format specifier
A placeholder starting with % in a printf or scanf string, such as %d for an int or %lf for reading a double, that says what type of value goes in that place.
Function prototype
A declaration of a function's name, return type and parameter types placed before the function is used, so that the compiler can check every call to it.
Header file
A file ending in .h, such as stdio.h or string.h, that holds declarations of functions and types and is brought into a program with #include.
Identifier
The name given to a variable, function or other item, which may use letters, digits and underscores but must not start with a digit or be a keyword.
Keyword
A word reserved by the C language, such as int, if, while or return, which cannot be used as an identifier.
Local variable
An ordinary variable declared inside a function, which exists only while that function runs and cannot be seen by other functions, unlike a global variable declared outside every function.
main function
The function where every C program starts running; it returns an int to the operating system, with 0 meaning the program finished successfully.
Null character
The character '\0' that marks the end of a string in C, which is why a char array needs one more place than the text it holds.
NULL pointer
A pointer holding the special value NULL to show that it points to no valid object; fopen, for example, returns NULL when it cannot open a file.
Pass by value
The way C passes arguments to a function, giving it copies of the values so that changing a parameter does not change the caller's variable.
Pointer
A variable that stores the memory address of another variable, declared with a star, as in int *p.
Preprocessor directive
A line beginning with #, such as #include or #define, that the preprocessor handles before the code is compiled.
Recursion
A technique in which a function calls itself, which needs a base case that stops the calls, as in a function that works out a factorial.
sizeof
An operator that gives the size in bytes of a type or variable, such as sizeof(int), and whose result is printed with the %zu format specifier.
String
In C, an array of char that ends with the null character, handled with functions from string.h such as strlen, strcpy, strcat and strcmp.
Structure
A user-defined type, declared with the keyword struct, that groups related members of different types, such as a student's roll number, name and percentage, under one name.
Undefined behaviour
What happens when a program breaks a rule of the C standard, such as using an array index outside its bounds, where the result is unpredictable and may be a crash or silently damaged data.

Subject 2 of 2

C++ Programming

Move from C to object-oriented C++17: classes, constructors, inheritance, virtual functions, overloading, templates, the STL containers vector, string and map, and exception handling.

  • 7 lessons
  • About 23 min of reading
  • 35 practice questions
  • 25 key terms
  1. 1C++ Basics: Input, Output and References3 min read · 4 key points · 3 exercises

    Key points

    • std::cout with << prints output; std::cin with >> reads input and stops at whitespace.
    • std::getline reads a whole line, spaces included.
    • A reference is an alias that must be initialised and cannot be re-bound.
    • Pass by reference to change the caller's variable, and by const reference to read large objects without copying.

    Try this

    1. Write a program that reads the user's full name with std::getline and then their age with std::cin, and prints a greeting with their age next year; then change it to read the name with std::cin, type a two-word name, and note what goes wrong.
    2. Write a function void addBonus(int& salary, int bonus) and a second version that takes salary by value instead; call both on a salary of 25000 with a bonus of 3000 and print the salary after each call to see which one changes it.
    3. Write a function void printBill(const std::string& item, int qty, double rate) that prints one bill line, call it for three items from a stationery shop, then add a line inside it that tries to change item and note the error the compiler reports.
  2. 2Classes, Objects and Access Specifiers3 min read · 5 key points · 3 exercises

    Key points

    • A class is a blueprint; an object is one instance with its own data members.
    • private members are reachable only inside the class, public members from anywhere.
    • class members are private by default and struct members are public by default.
    • A const member function promises not to change the object.
    • The scope resolution operator :: defines a member function outside its class.

    Try this

    1. Type the BankAccount class from this lesson, add a member function that prints a mini statement with the holder's name and balance, create accounts for two friends, and make several deposits and withdrawals on each to show that their balances stay separate.
    2. Write a Rectangle class with private length and width, a set function that ignores negative values, and const member functions area() and perimeter() that are defined outside the class with the scope resolution operator ::; check that length 4 and width 2.5 give an area of 10 and a perimeter of 13.
    3. In main, try to change the private balance of a BankAccount object directly and copy the compiler error into your notebook; then change the keyword class to struct and delete the private: label, and confirm that the same line now compiles because struct members are public by default.
  3. 3Constructors and Destructors3 min read · 5 key points · 3 exercises

    Key points

    • A constructor has the class's name and no return type, and runs when an object is created.
    • Declaring any constructor stops the compiler from generating the default constructor.
    • A copy constructor creates a new object from an existing one of the same class.
    • The destructor, named with a tilde, runs automatically when an object is destroyed.
    • Local objects are destroyed in the reverse order of their creation.

    Try this

    1. Type the Student class from this lesson and run it, then add Student d; as the last line before return in main and write down the complete output you expect, including the order of the Destroyed lines, before running it again to check.
    2. Write a Product class whose only constructor takes a name and a price and sets them in a member initialiser list, try to create an object with Product p; and note the compiler error, then fix it by adding a default constructor.
    3. Write a class Guard whose constructor prints Entering and whose destructor prints Leaving, create a Guard object at the top of a function that has two return statements, and call the function so that each return is taken once to confirm that Leaving is printed both times, which is the idea behind RAII.
  4. 4Inheritance3 min read · 4 key points · 3 exercises

    Key points

    • A derived class inherits the members of its base class and can add its own.
    • The base constructor runs before the derived constructor; destructors run in reverse.
    • protected members are usable in derived classes but not from outside code.
    • Write public before the base class name; class inheritance is private by default.

    Try this

    1. Type the Employee and Manager classes from this lesson, add a destructor to each class that prints a message, and confirm from the output that the constructors run base first while the destructors run derived first.
    2. Create a base class Vehicle with protected members brand and wheels, and two derived classes Car and Bike that each add one member of their own and a show function; create one object of each in main, then try to print brand directly from main and note the error.
    3. Build a multilevel chain in which Student inherits publicly from Person and Topper inherits publicly from Student, give each class one data member and a constructor that passes values to its base through the initialiser list, and print every detail from a single Topper object.
  5. 5Polymorphism and Virtual Functions3 min read · 5 key points · 3 exercises

    Key points

    • Overloading and templates are compile-time polymorphism; virtual functions are run-time polymorphism.
    • Without virtual, a call through a base pointer or reference uses the base version.
    • A class with a pure virtual function (= 0) is abstract and cannot be instantiated.
    • override asks the compiler to confirm that a function really overrides a base virtual function.
    • Give a base class with virtual functions a virtual destructor, so deleting through a base pointer is safe.

    Try this

    1. Type the Shape and Circle program from this lesson and run it, then add virtual before void draw() in Shape and run it again; write down both outputs and explain in one sentence why the second one changed.
    2. Add a third class, CashPayment, to the Payment example that overrides pay, and call checkout with it without changing the checkout function at all; then misspell pay in your new class and note the error that override makes the compiler report.
    3. Write an abstract class Shape with a pure virtual function area() and a virtual destructor, derive Circle and Rectangle from it using override, store the addresses of one of each in an array of two Shape pointers and print every area in a loop; then try to create a Shape object directly and note the compiler error.
  6. 6Function Overloading, Operator Overloading and Templates4 min read · 4 key points · 3 exercises

    Key points

    • Overloaded functions share a name but differ in the number or types of parameters.
    • A different return type alone cannot overload a function.
    • Operator overloading gives operators a meaning for your own classes; ::, ., ?: and sizeof cannot be overloaded.
    • A template is written once and works with many types.

    Try this

    1. Write three overloaded functions named area for a square, a rectangle and a circle, call each one from main, and then add a fourth version that differs from one of them only in its return type to see the compiler reject it.
    2. Type the Money class from this lesson, add an operator- that subtracts one amount from another, and print Rs 350.25 minus Rs 99.75 to check that the answer is Rs 250.50.
    3. Write a function template largest that returns the larger of two values and test it with two ints, two doubles and two std::string objects; then write a class template Pair that stores two values of the same type with a member function that returns their sum, and test it with int and double.
  7. 7STL Containers and Exceptions4 min read · 5 key points · 3 exercises

    Key points

    • vector is a growable array; at() checks the index and throws std::out_of_range.
    • string offers length, substr, find and comparison with ==.
    • map keeps unique keys in sorted order, and [] inserts a missing key.
    • throw raises an exception, and the matching catch block after a try handles it.
    • Catch exceptions by const reference, specific types first.

    Try this

    1. Write a program that reads marks until the user enters -1, stores them in a std::vector of int with push_back, and prints how many marks were entered, their total, their average and the highest mark using a range-based for loop; if the user types -1 straight away, check empty() and print No marks entered instead of dividing by zero.
    2. Keep the stock of five stationery items in a std::map from item name to quantity, let the user type an item name and print its quantity, and use find or count so that a name not in the map prints Not in stock instead of being added to the map.
    3. Write a divide function that throws std::invalid_argument when the divisor is 0, call it inside a try block with two numbers typed by the user, catch it with a catch block for const std::exception& and print e.what(); then, inside the same try block, add a call to at(10) on a three-element vector and a separate catch block for std::out_of_range placed before the general std::exception one.
Glossary: 25 key terms of C++ Programming
Abstract class
A class with at least one pure virtual function, so no objects of it can be created and it serves only as a base for other classes.
Access specifier
One of the keywords public, private or protected, which decide where a member of a class can be used from.
Class
A user-defined type that bundles data members with the member functions that work on them, acting as the plan from which objects are made.
Constructor
A special member function with the same name as its class and no return type that runs automatically when an object is created, to give it a valid starting state.
Copy constructor
A constructor that builds a new object from an existing object of the same class, used for example when one object is initialised from another or passed by value.
Destructor
A member function named with a tilde before the class name that runs automatically when an object is destroyed, usually to release resources the object holds.
Encapsulation
Keeping a class's data private and allowing changes only through its public member functions, so that the class can keep its data valid.
Exception
An object raised with throw to signal an error the current code cannot handle, which is then handled by a matching catch block after a try block.
Function overloading
Defining several functions with the same name but different numbers or types of parameters, with the compiler choosing the one that matches each call.
Inheritance
A feature that lets a derived class reuse and extend the members of a base class, modelling an is-a relationship such as a manager being an employee.
Member initialiser list
The list written after a colon in a constructor, such as : name(n), roll(r), which initialises data members directly instead of assigning to them in the constructor body.
Namespace
A named scope that groups related names so they do not clash with others; the standard library's names, such as cout and string, belong to the std namespace.
Object
One instance of a class, with its own copy of the class's data members.
Operator overloading
Giving an operator such as + or == a meaning for your own class by writing a function named operator followed by the symbol.
override
A specifier written after a member function in a derived class that makes the compiler report an error if the function does not actually override a virtual function of the base class.
Polymorphism
The ability of one name to behave differently depending on the type it works with, achieved at compile time through overloading and templates and at run time through virtual functions.
Pure virtual function
A virtual function declared with = 0 in a base class, which a derived class must override before objects of that derived class can be created.
RAII
Short for Resource Acquisition Is Initialisation, the C++ idea of tying a resource such as memory or an open file to an object so that the object's destructor releases it automatically.
Reference
Another name, or alias, for an existing variable, declared with & after the type, which must be initialised and cannot later be made to refer to a different variable.
Scope resolution operator
The :: operator, used to name something that belongs to a class or namespace, as in Rectangle::area or std::cout.
Stack unwinding
The process, after an exception is thrown, of leaving every block and function up to the matching catch handler and destroying their local objects on the way.
STL
The Standard Template Library, the part of the C++ standard library that provides containers such as vector and map, algorithms such as sort and find, and the iterators that connect them.
Template
A function or class written once with a type parameter, from which the compiler generates a separate version for each type it is used with.
this pointer
A hidden pointer available inside a member function that points to the object on which the function was called.
Virtual function
A member function declared with the keyword virtual in a base class, so that a call through a base pointer or reference runs the version that belongs to the object's actual type.

Practice and study material

Study books and timed practice tests in the student portal

Students sign in to read the study books lesson by lesson, print them, mark lessons as done and test themselves with timed practice tests, every answer explained.

  • 2study books
  • 14lessons
  • 70practice questions
  • 50glossary terms

How the practice tests work

  • Fresh questions each time

    Up to 20 questions are picked at random from the subject’s question bank.

  • One minute per question

    A timer counts down. When it reaches zero, your answers are sent automatically.

  • Move around freely

    Skip a question, flag it, and come back to change your answer before you submit.

  • Learn from every answer

    At the end you see the right answer and an explanation for each question.

  • Read, print and keep track

    Each study book has its lessons, key points, exercises and a glossary. Print a lesson, or mark it as done.

Try 3 practice questions

Real questions from this course’s question banks. Pick an answer to see the explanation.

  1. C Programming · Question 1

    What does the & operator give when written before a variable, as in &x?

    Show the answer

    Answer: D. The memory address of x

    The unary & is the address-of operator; it gives the location of x in memory.

  2. C++ Programming · Question 2

    What is the main benefit of templates?

    Show the answer

    Answer: C. One function or class can be written once and used with many data types

    The compiler generates a version of the template for each type it is used with, so the code is written only once.

  3. C Programming · Question 3

    What is the value of sizeof(char) in C?

    Show the answer

    Answer: D. 1, on every compiler

    The C standard defines sizeof(char) as exactly 1; the sizes of the other types can vary between compilers.

Free ebooks

7 free ebooks for this course

Branded PDF books to read on your phone or print: the study books of this course and more. Free for anyone, no sign-in needed.

Careers

Careers this course leads towards

The kind of work these skills are used for. Each guide explains what the job involves, the skills it asks for and how to get started.

  • Software developer

    Writing, testing and fixing programs in languages such as C, C++, Java and Python.

  • Computer teacher

    Teaching computer basics, MS Office and typing at a computer centre or in a school.

How admission works

From your first question to your certificate.

The usual steps, at the head office in Delhi or at an authorised member centre.

Who can join
Students above 12 years of age.
Where
The Delhi head office and authorised member centres.
Fees and timings
On WhatsApp at +91 97116 99511, or by phone on 011 2721 1512.
Start with a question
  1. 1

    Ask about the course

    Call or WhatsApp the head office, or visit your nearest member centre. Ask for the duration, the fee and the batch timings in writing.

  2. 2

    Fill the admission form

    Admission forms are supplied by the head office to every centre.

  3. 3

    Learn in class

    Attend your batch at the centre, with the course material and study notes, and sign in to the student portal for the study books and practice tests.

  4. 4

    Take the exam

    The institute prefers written exams, taken in front of a teacher.

  5. 5

    Receive your certificate

    Students who pass get a Gurukul Technicals Institute certificate and marksheet. Employers can verify it with the head office.

Questions

Questions about the C and C++ course

Still have a question?

Chat on WhatsApp
Who can join the C and C++ course?

Students above 12 years of age can take admission, at the Delhi head office or at an authorised member centre. The course suits students from class 10 onwards. Tell the head office or your centre what you already know, and they will suggest where to start.

Which C++ standard do the study books follow?

The C++ study book follows C++17, moving on from C to classes, templates and the STL containers vector, string and map.

How long is the course and what is the fee?

Duration, fees and batch timings depend on the course and the centre. Ask the head office or your nearest member centre, and get the details in writing before you pay.

Where are the classes?

At the head office in Delhi (A-10, Chief Commissioner Colony, opposite Rana Pratap Bagh) and at authorised member centres. Call or WhatsApp the head office to find the nearest centre.

What do I need to use the study books and practice tests?

A phone or a computer with an internet connection, and the login your centre gives you at enrolment. The student portal opens in an ordinary web browser, so there is nothing to install. Student login.

How do the practice tests work?

Sign in to the student portal and choose a subject. Each test picks up to 20 questions at random from that subject’s question bank and gives you one minute per question, with a timer that sends your answers automatically when it reaches zero. You can skip a question, flag it and come back before you submit, and at the end you see the right answer and an explanation for every question. This course has 70 practice questions across 2 subjects, and you can take the tests as often as you like.

Is there an exam and a certificate?

Yes. The institute prefers written exams, taken in front of a teacher. Students who pass receive a Gurukul Technicals Institute certificate and marksheet.

How is a Gurukul Technicals Institute certificate verified?

On the verify certificate page, anyone can enter a certificate number and check it against the institute’s online register, which covers certificates issued through the portal. For older certificates, or if there is any doubt, send a copy to the head office by email or WhatsApp; the reply comes within 2 working days.

Are the ebooks on this page really free?

Yes. The 7 ebooks for this course are free PDF downloads for anyone, whether or not you join. The whole library has 100 free ebooks: browse them all.

Ready to start the C and C++ course?

Ask the head office for the duration, the fee, the batch timings and your nearest member centre.

WhatsApp us