Infosys Technical Interview Questions
1) What is polymorphism?
Polymorphism is a concept by which we can perform a single action in different ways. Polymorphism is derived from two Greek words: poly and morphs. The word “poly” means many and “morphs” means forms. So polymorphism means many forms.
2) Explain the functionality of linked list.
A linked list consists of two parts. Information part and the link part. In the single linked list, first node of the list is marked by a unique pointer named as start and this pointer points to the first element of the list, and the link part of each node consists of a pointer pointing to the next node, but the last node of the list has null pointer identifying the last node. The linked list can be traversed easily with the help of Start pointer.
3) What is normalization of databases, joins, and keys?
Normalization is also known as the process of organizing data in a DBMS efficiently without any loss of data.
Advantages of the normalization process are as follows:
First is eliminating redundant data and ensuring data dependencies make sense. It reduces the amount of space that the database consumes and ensure that data is logically stored.
This clause is used in DBMS to combine rows from two or more tables, based on a related column between them.
Keys are a crucial part of the relational database model. They are used to identify and establish relationships between tables. They are also used to uniquely determine each record or row of data in a table.
A Key can be a single attribute or a group of attributes acting as a key.
4) What is inheritance?
In, object-oriented programming, inheritance is a mechanism based on classes.
Inheritance refers to inheriting the data members and properties of a parent class to a child class. A class which is derived from another class is often called as a sub-class, and the class from which the child class is derived is known as super-class or parent class.
5) What are the different types of inheritance?
Types of Inheritance:
- Single inheritance
- Multiple Inheritance
- Multi-level Inheritance
- Multi-path Inheritance
- Hierarchical Inheritance
- Hybrid Inheritance
6) Demonstrate the process of inheriting variable of one class to other class?
- //Base Class
- class A
- public int a;
- //Derived Class
- class B : A
7) What are the loops statements?
To execute a block of statement several times in a program depending upon the conditional statement loops are used.
The basic structure of a loop is given above in the diagram. For each successful execution of the loop, the conditional statement should be checked. If the conditional statement is true, then the loop will be executed. If the conditional statement is false, then the loop will be terminated.
8) Difference between classes and interface?
The difference between classes and interface are listed below:
- The instance of the class can be created by creating its object, whereas interfaces cannot be instantiated as all the methods in the interface are abstract and do not perform any action, There is no need for instantiating an interface.
- A class is declared using class keyword whereas an interface is declared using interface keyword.
- The members of the class can have access specifier such as public, protected, and private but members of the interface cannot have the access specifier, all the members of the interface is declared as public because the interface is used to derive another class. There will be no use of access specifies inside the members of an interface.
- The methods inside the class are defined to perform some actions on the fields declared in the class whereas interface lacks in declaring in fields, the methods in an interface are purely abstract.
- A class can implement any number of the interface but can only extend one superclass, whereas interface can extend any number of interfaces but cannot implement any interface.
- A class can have a constructor defined inside the class to declare the fields inside the class, whereas interface doesn’t have any constructor defined because there are no fields to be initialized.
9) What is software development life-cycle? Also, explain the waterfall model.
SDLC is a process followed for developing and enhancing software project. It consists of a detailed plan for developing, maintaining a specific software. The life cycle defines a methodology process for improving the quality of software and the overall development process.
In “The Waterfall” model, the whole process of software development is divided into separate phases. In this Waterfall model, typically, the outcome of one phase acts as the input for the next phase sequentially.
10) What are the four basic principles of OOPS?
The four basic principles of Object-Oriented Programming System are listed below:
11) What are the conditional statements?
The conditional statements can alternatively be called a conditional expression also. Conditional statements are the set of rules which were executed if a particular condition is true. It is often referred to an if-then statement because if the condition is true, then the statement is executed.
12) What is Database Management System?
A Database Management System is a software system is used for creating and managing databases. DBMS make it possible for the end user to create and maintain databases. DBMS provides an interface between the end user/application and the databases.
13) List different advantages of DBMS.
Improved data sharing.
The list of several advantages of Database Management System:
- Improved data security.
- Better data integration.
- Minimized data inconsistency.
- Improved data access.
- Improved decision making.
- Increased end-user productivity.
14) What do you mean by Object-Relational DBMS?
The object-relational database (ORD) is a database management system (DBMS) that are composed of both an object-oriented database (OODBMS) and a relational database (RDBMS). ORD supports the essential components of an object-oriented database model in its schemas and the query language used, such as inheritance, classes, and objects.
An object-relational database is also known as an object-relational database management systems (ORDBMS).
15) What is database Schema?
It is a set of formulas (sentences) called integrity constraints imposed on a database.
16) What is an IC? What is its importance?
IC refers to integrated circuits sets of electronic circuits on single flat piece semiconductor material, and usually, silicon is used. The integration of a large number of tiny transistors into a small chip results in circuits that are smaller in size and faster than those discrete electronic components. The importance of integrated circuits than the separate electronic components is integrated circuits are smaller in size, faster, low costs than discrete electronic components.
17) Write a program to check whether the input number is a perfect number or not.
- #include <stdio.h>
- int main()Improved data sharing.
- int number, remainder, sum = 0, i;
- printf(“Enter a Number\n”);
- scanf(“%d”, &number);
- for (i = 1; i < number ; i=i+1)
- remainder = number % i;
- if (remainder == 0)
- sum += i;
- if (sum == number)
- printf(“Number is perfect number”);
- printf(“Number is not a perfect number”);
- return 0;
18) Tell me something about DSN?
A Data Source Name as the name suggests it is the logical name for Open Database Connectivity to refer to other information that is required to access data. For a connection to an ODBC data source Microsoft SQL Server database.
19) What is the difference between a Clustered-index and a non-clustered-index?
Clustered Index – Only one per table is allowed
Faster to read than non clustered because the data is physically stored in index order
Non-Clustered Index – Can be used many times in a table
Quicker for inserting and updating operations than a clustered index
20) Difference between C & embedded C.
- C is a type of the computer programming language. C was initially developed by Dennis Ritchie in AT&T Bell Labs between 1969 and 1973. It has a free-format program source code. C is a general-purpose programming language.
- C is generally used for desktop computers
- C can use the resources of a desktop PC like memory, OS, etc.
- Compilers for C (ANSI C) typically generate OS dependent executables.
- Embedded C is the set of language extensions for the C Programming language. It was released by the C Standards committee. Through the Embedded C extensions, the C Standards committee hoped to address the commonality issues that exist between C extensions for different embedded systems.
- Embedded C is for micro-controller based applications.
- Embedded C is used with the limited resources, such as RAM, ROM, I/Os on an embedded processor.
- Embedded C requires compilers to create files to be downloaded to the micro-controllers/microprocessors where it needs to run.
21) What is a pointer in C? What is its use?
The pointer is a particular variable which holds the address of another variable of the same type. Pointers can be of any data type and structure are allowed in C programming language. Pointer variable stores the address of another variable of the same data type as the value of the pointer variable.
Following are the uses of pointers:
- To point a variable in the memory.
- Pointers are used to traverse the linked list.
- To point out a structure.
22) Different between a session and a socket?
The Socket is the Combination of Ip address, and Port Number and the session is a Logical Connectivity between the source and destination.
23) What is a null pointer?
The null pointer is the pointer with no reference to any location of the memory.
A null pointer contains zero as its value which means pointer is empty and not pointing to anywhere in the memory. Null pointers can be used further in the program to initialize the address of the memory location with the same data type of the pointer.
Note: Pointers can only point to the variable having the same datatype. If the data type of pointer and datatype of pointing variable is different, then the pointer will not work.
24) What is a Real-Time OS?
A real-time operating system is an operating system which acts as an interface between hardware and user. This system guarantees a specific capability within a specified time. For example, an operating system is designed to ensure that a specific object was available for a robot on an assembly line.
25) Difference between TCP and UDP.
|Connection-orientated protocol||Connectionless protocol|
|Segment sequencing.||No sequencing.|
|Acknowledge sequencing||No windowing and retransmission.|
|Reliable transmission protocol.||Unreliable transmission protocol.|
26) Write a c program to swap two numbers without using a temporary variable.
- void swap(int &i, int &j)
27) Which functions are used for memory allocation in C/C++
The Function calloc() allocates a memory area, and the length will be the product of its parameters(it has two parameters). It fills the memory with ZERO’s and returns a pointer to the first byte of the memory. If it fails to locate enough space, Then it returns a NULL pointer.
The function malloc() allocates a memory area, and length will be the value entered as a parameter. (it has one parameter). It does not initialize memory area free() used to free the allocated memory(allocated through calloc and malloc), in other words, this used release the allocated memory new also used to allocate memory on the heap and initialize the memory using the constructor delete also used release memory allocated by new operator
29) What is a virtual function and what is the pure virtual function?
Virtual function:- In order to achieve polymorphism, function in base class is declared as virtual, By declare virtual we make the base class pointer to execute the function of any derived class depends on the content of pointer (any derived class address).
Pure Virtual Function:- This is a function used in base class, and its definition has to be provided in a derived class, In other pure virtual function has no definition in the base is defined as:
- virtual void fun()=0;
That means this function not going to do anything, In case of the pure virtual function derived function has to implement the pure virtual function or redeclare it as the pure virtual function
30) What are WPF-WCF?
WPF/WCF application, need in .NET 3.0 Framework. This application will cover the following concepts:
- WCF(Windows Communication Foundation)
- The new service orientated attributes
- The use of interfaces
- The use of callbacks
- Asynchronous delegates
- Creating the proxy
- WPF( Windows Presentation Foundation )
- Multithreading a WPF application
31) Difference between the EXE and the DLL file extension?
The term EXE is a short-term of the word executable as it identifies the file as a program. Whereas, DLL stands for Dynamic Link Library, which commonly contains functions and procedures that can be used by other programs.
32) Scenarios in which the web application should be used and scenarios in which desktop application should be used?
Scenarios in which web application used are listed below:
- Cost effective development
- Accessible anywhere
- Easily customizable
Scenarios in which desktop application should be used are listed below:
- Desktop application usually has more control.
Safe for computationally expensive software that needs to communicate directly with the OS.
The desktop application is often offline and does not need an Internet connection to function compared to a web application.
33) What is an array?
An array is a group of elements used to store a group of related data of the same data type.
The array uses index number to identify each element in an array.