Beruflich Dokumente
Kultur Dokumente
1. What is an algorithm?
Ans: An algorithm is a step-by-step method of performing any task.
2. What is a flow chart?
Ans: A flowchart is a type of diagram that represents an algorithm or process, showing the steps as
boxes of various kinds, and their order by connecting these with arrows.
3. The C compiler translates source to assembly code in C Programming.
4. The assembler creates object code.
5. What are the stages of developing your C program?
Ans: There are four stages of developing C program
Creating the program
Compiling the program
Linking the program with functions that are needed from C Library
Running the program.
6. What is a C Preprocessor?
Ans: C Preprocessor is a program that processes our source program before it is passed to the compiler.
7. What is the use of header files as used in C programming?
Ans: Header files are used to have declarations. It is simple to include a single header file than writing all
the needed functions prototypes.
8. What is the Structure of a C Program?
Ans: Documentation Section, Linking Section, Definition Section, Global declaration Section, main
function, subprogram section.
9. Every Program statement in a C program must end with a Semicolon.
10. What is the use of main() function?
Ans: main() is the starting point of program execution.
11. How many main() functions can there be in a C Program?
Ans: Only one.
12. What are Macros?
Ans: A macro is a fragment of code which has been given a name. Whenever the name is used, it is
replaced by the contents of the macro. Example: #define UPPER 25.
13. What are its advantages and disadvantages?
Ans: The advantage of macro is that it reduces the time taken for control transfer as in case
of
function.
The disadvantage of it is here the entire code is substituted so the program becomes
lengthy if a macro is called several times.
Ans: It contains Utility functions such as string conversion routines, memory allocation routines, random
number generator etc..
48. A main program can contain how many functions?
Ans: It can contain any number of functions.
49. What is a pointer?
Ans: A pointer is a variable, which contains the address of another variable.
50. What is NULL pointer?
Ans: A null pointer does not point to any object.
51. Explain the scope of static variables.
Ans: The scope of a static variable is local to the block in which the variable is defined.
52. C is High level Language or Low level language?
Ans: High-Level Language.
53. Who invented C?
Ans: Dennis Ritchie.
54. C follows Top down Approach.
55. C programming language is case sensitive?
Ans: Yes.
56. What is Break Statement in C?
Ans: The break statement terminates the execution of the current loop and the Control passes to the
statement that follows the terminated statement.
57. What is Continue Statement in C?
Ans: Whenever a keyword continue is encountered inside a loop, the control automatically passes to
the beginning of the loop.
58. What is the difference between Break and Continue in C?
Ans: break statement is used to break any type of loop such as while, do while and for loop. Break
statement terminates the loop body immediately. Continue statement is used to break current iteration.
After continue statement the control returns to the top of the loop test conditions.
59. What is a function?
Ans: A function is a self contained block of statements that perform a coherent task of some kind.
Ans: The auto variables are stored in the memory of the system. The keyword auto is optional. Many of
the variables used by the program / application are auto variables, being the main memory is faster.
These variables are stored in the memory runtime stack.
\0 character.
- The length of an array is to specified in [] at the time of declaration (except char[]). The length of the
string is the number of characters + one (null character).
80. Difference between array and pointer?
Ans:
Array
1- Array allocates space automatically
2- It cannot be resized
3- It cannot be reassigned
4- sizeof (arrayname) gives the number of bytes occupied by the array.
Pointer
1-Explicitly assigned to point to an allocated space.
2-It can be sized using realloc()
3-pointer can be reassigned.
4-sizeof (p) returns the number of bytes used to store the pointer variable p
81. What will be printed as the result of the operation below:
main()
{
int x=10, y=15;
x = x++;
y = ++y;
printf(%d %d\n,x,y);
}
Ans: 11, 16
82. What will be the result of the following code?
#define TRUE 0 // some code
while(TRUE)
{
// some code
}
Ans: This will not go into the loop as TRUE is defined as 0
83. What are the uses of a pointer?
Ans: Pointer is used in the following cases
i) It is used to access array elements
ii) It is used for dynamic memory allocation.
iii) It is used in Call by reference
iv) It is used in data structures like trees, graph, linked list etc.
84. What is a structure?
Ans: Structure constitutes a super data type which represents several different data types in a single
unit. A structure can be initialized if it is static or global.
85. What is a union?
Ans: Union is a collection of heterogeneous data type but it uses efficient memory utilization technique
by allocating enough memory to hold the largest member. Here a single area of memory contains values
of different types at different time. A union can never be initialized.
86. What are the differences between structures and union?
Ans: A structure variable contains each of the named members, and its size is large enough to hold all
the members. Structure elements are of same size.
A union contains one of the named members at a given time and is large enough to hold the largest
member. Union element can be of different sizes.
87. What are the differences between structures and arrays?
Ans: Structure is a collection of heterogeneous data type but array is a collection of homogeneous data
types.
Array
1-It is a collection of data items of same data type.
2-It has declaration only
3-.There is no keyword.
4- array name represent the address of the starting element.
Structure
model all pointers to data are 32bits long. If we use small data model(tiny, small, medium) the above
address wont work since in these model each pointer is 16bits long. If we are working in a small data
model and want to access the address B0008000 then we use far pointer. Far pointer is always treated
as a 32bit pointer and contains a segment address and offset address both of 16bits each. Thus the
address is represented using segment: offset format B000h:8000h. For any
given memory address there are many possible far address segment: offset pair. The segment register
contains the address where the segment begins and offset register contains the offset of data/code
from where segment begins.
94. What is a huge pointer?
Ans: Huge pointer is 32bit long containing segment address and offset address. Huge pointers are
normalized pointers so for any given memory address there is only one possible huge address segment:
offset pair. Huge pointer arithmetic is doe with calls to special subroutines so its arithmetic slower than
any other pointers.
95. What is a normalized pointer, how do we normalize a pointer?
Ans: It is a 32bit pointer, which has as much of its value in the segment register as possible. Since a
segment can start every 16bytes so the offset will have a value from 0 to F. for normalization convert
the address into 20bit address then use the 16bit for segment address and 4bit for the offset address.
Given a pointer 500D: 9407,we convert it to a 20bitabsolute address 549D7,Which then normalized to
549D:0007.
96. What is near pointer?
Ans: A near pointer is 16 bits long. It uses the current content of the CS (code segment) register (if the
pointer is pointing to code) or current contents of DS (data segment) register (if the pointer is pointing
to data) for the segment part, the offset part is stored in a 16 bit near pointer. Using near pointer limits
the data/code to 64kb segment.
97. In C, why is the void pointer useful? When would you use it?
Ans: The void pointer is useful because it is a generic pointer that any pointer can be cast into and back
again without loss of information.
98. What is a NULL Pointer? Whether it is same as an uninitialized pointer?
Ans: Null pointer is a pointer which points to nothing but uninitialized pointer may point to anywhere.
99. Are pointers integer?
Ans: No, pointers are not integers. A pointer is an address. It is a positive number.
100. Can a Structure contain a Pointer to itself?
Ans: Yes such structures are called self-referential structures.
101. . What do the c and v in argc and argv stand for?
Ans: The c in argc(argument count) stands for the number of command line argument the program is
invoked with and v in argv(argument vector) is a pointer to an array of character string that contain the
arguments.
Ans: A linked list is a linear collection of data elements, called nodes, where the linear order is given by
pointers. Each node has two parts first part contain the information of the element second part contains
the address of the next node in the list.
125. What are the advantages of linked list over array (static data structure)?
Ans:
The disadvantages of array are
i) unlike linked list it is expensive to insert and delete elements in the array
ii) One cant double or triple the size of array as it occupies block of memory space.
In linked list
i) each element in list contains a field, called a link or pointer which contains the address of the next
element
ii) Successive elements need not occupy adjacent space in memory.
126. What is the pre-requisite of binary search?
Ans: The elements should be in sorted order.
127. Can we apply binary search algorithm to a sorted linked list, why?
Ans: No we cannot apply binary search algorithm to a sorted linked list, since there is no way of indexing
the middle element in the list. This is the drawback in using linked list as a data structure.
ii) If a list is traversed, the external pointer to the list must be persevered in order to reference the list
again
137. Define circular list?
Ans: In linear list the next field of the last node contain a null pointer, when a next field in the last node
contain a pointer back to the first node it is called circular list.
Advantages From any point in the list it is possible to reach at any other point.
138. What are the disadvantages of circular list?
Ans:
i) We cant traverse the list backward
ii) If a pointer to a node is given we cannot delete the node.
139. Define double linked list?
Ans: It is a collection of data elements called nodes, where each node is divided into three parts
i) An info field that contains the information stored in the node
ii) Left field that contain pointer to node on left side
iii) Right field that contain pointer to node on right side.
140. Is it necessary to sort a file before searching a particular item ?
Ans:
If less work is involved in searching a element than to sort and then extract, then we dont go for sort
If frequent use of the file is required for the purpose of retrieving specific element, it is more efficient to
sort the file.
Thus it depends on situation.
141. What are the issues that hamper the efficiency in sorting a file?
Ans: The issues are
i) Length of time required by the programmer in coding a particular sorting program
ii) Amount of machine time necessary for running the particular program
iii) the amount of space necessary for the particular program.
142. Calculate the efficiency of sequential search?
Ans: The number of comparisons depends on where the record with the argument key appears in the
table
If it appears at first position then one comparison
If it appears at last position then n comparisons
Average=(n+1)/2 comparisons
Unsuccessful search n comparisons
Number of comparisons in any case is O (n).
143. Parenthesis is never required in Postfix or Prefix expressions, why?
Ans: Parenthesis is not required because the order of the operators in the postfix /prefix expressions
determines the actual order of operations in evaluating the expression.
144. List out the areas in which data structures are applied extensively?
Ans: Compiler Design, Operating System, Database Management System, Statistical analysis package,
Numerical Analysis, Graphics, Artificial Intelligence, Simulation.
145. What are the major data structures used in the following areas: network data model &
Hierarchical data model.
Ans:
RDBMS Array (i.e. Array of structures)
Network data model Graph
Hierarchical data model Trees
146. If you are using C language to implement the heterogeneous linked list, what pointer
type will
you use?
Ans: The heterogeneous linked list contains different data types in its nodes and we need a link, pointer
to connect them. It is not possible to use ordinary pointers for this. So we go for void pointer. Void
pointer is capable of storing pointer to any type as it is a generic pointer type.
147. Minimum number of queues needed to implement the priority queue?
Ans: Two. One queue is used for actual storing of data and another for storing priorities.
148. What is the data structures used to perform recursion?
Ans: Stack. Because of its LIFO (Last In First Out) property it remembers its caller so knows whom to
return when the function has to return. Recursion makes use of system stack for storing the return
addresses of the function calls.
Every recursive function has its equivalent iterative (non-recursive) function. Even when such equivalent
iterative procedures are written, explicit stack is to be used.
149. What are the notations used in Evaluation of Arithmetic Expressions using prefix and postfix forms?
Ans: Polish and Reverse Polish notations.
150. Convert the expression ((A + B) * C (D E) ^ (F + G)) to equivalent Prefix and Postfix
notations.
Ans: Prefix Notation:
^ * +ABC DE + FG
Postfix Notation:
AB + C * DE FG + ^
151. Sorting is not possible by using which of the following methods?
(a) Insertion
(b) Selection
(c) Exchange
(d) Deletion
Ans: (d) Deletion.
Using insertion we can perform insertion sort, using selection we can perform selection sort, using
exchange we can perform the bubble sort (and other similar sorting methods). But no sorting method
can be done just using deletion.
152. List out few of the Application of tree data-structure?
Ans:
The manipulation of Arithmetic expression,
Symbol Table construction,
Syntax analysis.
153. List out few of the applications that make use of Multilinked Structures?
Ans: Sparse matrix, Index generation.
154. in tree construction which is the suitable efficient data structure?
(A) Array (b) Linked list (c) Stack (d) Queue (e) none
Ans: (b) Linked list
155. What is the type of the algorithm used in solving the 8 Queens problem?
Ans: Backtracking
156. In an AVL tree, at what condition the balancing is to be done?
Ans: If the pivotal value (or the Height factor) is greater than 1 or less than 1.
157. There are 8, 15, 13, 14 nodes were there in 4 different trees. Which of them could have
formed a
full binary tree?
Ans: 15
In general:
There are 2n-1 nodes in a full binary tree.
By the method of elimination:
Full binary trees contain odd number of nodes. So there cannot be full binary trees with 8 or 14 nodes,
so rejected. With 13 nodes you can form a complete binary tree but not a full binary tree. So the correct
answer is 15.
Note: Full and Complete binary trees are different. All full binary trees are complete binary trees but not
vice versa.
158. In RDBMS, what is the efficient data structure used in the internal storage
representation?
Ans: B+ tree. Because in B+ tree, all the data is stored only in leaf nodes, that makes searching easier.
This corresponds to the records that shall
be stored in leaf nodes.
159. What is a spanning Tree?
Ans: A spanning tree is a tree associated with a network. All the nodes of the graph appear on the tree
once. A minimum spanning tree is a spanning tree organized so that the total edge weight between
nodes is minimized.
160. Does the minimum spanning tree of a graph give the shortest distance between any 2
specified
nodes?
Ans: No.
Minimal spanning tree assures that the total weight of the tree is kept at its minimum. But it doesnt
mean that the distance between any two nodes involved in the minimum-spanning tree is minimum.
161. What are the memory allocation functions in C?
Ans:
Malloc: Allocates required size of bytes and returns a pointer to the first byte of the allocated space.
Calloc: Allocates space for an array of elements, initializes them to zero and then returns a pointer to
the memory.
free: Frees previously allocated space.
node.
190. What is a graph?
Ans: A graph is a set of nodes (also known as vertices) and a set of arcs (also known as edges).
191. What is sorting?
Ans: Sorting means rearranging a given list of elements in an orderly manner.
192. Mention the different types of sorting techniques.
Ans:
1. Bubble sort 4. Merge sort
2. Insertion sort 5. Quick sort
3. Selection sort 6. Heap sort etc..
193. Quick sort employees Divide and conquer technique.
194. Briefly explain Bubble sort.
Ans: This method takes two elements at a time. It compares these two elements. If the first element is
less than the second element, then they are left undisturbed. If the first element is greater than the
second element, they are swapped. This procedure continues with the next two elements, goes on and
ends when all the elements are sorted.
195. What is the order of bubble sort?
Ans: O (n2)
196. What is the average case of quick sort is?
Ans: O (nlogn)
Java
Superclass: A class further up in the inheritance hierarchy than its child, the
subclass.
Subclass: A class lower in the inheritance hierarchy than its parent, the superclass.
When you create a new class, thats often called subclassing.
Instance method: A method defined in a class, which operates on an instance of
that class. Instance methods are usually called just methods.
Class method: A method defined in a class, which can operate on the class itself or
on any object.
Instance variable: A variable that is owned by an individual instance and whose
value is stored in the instance.
Class variable: A variable that is owned by the class and all its instances as a
whole, and is stored in the class.
Interface: A collection of abstract behavior specifications that individual classes
can then implement.
Package: A collection of classes and interfaces. Classes from packages other than
java.lang must be explicitly imported or referred to by full package name.