Selection Procedure
Written Test
Number of Questions : 15 + 2 Coding
Time : 30 Minutes + 1 hour for Coding
Area Cover :
C, C++(Questions from "Test Your C++ skill"), OS(Pagging), COA(Caching)
Note : Given answer of the following questions may or may not correct.
Sample Questions:
1. 48 bit architecture , what is size of virtual address space? 2^48 bytes
2. 1 rabbit couple. Couple will start producing other couple only when their age is one month.Initially in first month one couple is there.
how many couples will be at the end of year.
Hint : fibonacci series
3. Some cpp codes and asked output. (i.e. Virtual Functions from "Test your C++ skill")
4. C codes and output.
5. Find bugs in given code.
6. Complexity of BFS if adjacency list is given.
7. What is used in Demand paging
a) sequential search b) binary search
8. If pointer to function is declared then how to call that function.
9. In a tree every node has 2 children or 0 children. if there are 'n' nodes with 2 children then
how many with 0 children? ans: n+1
10. If we add a constant weight to each edge in a graph will the shortest path “between any two
vertices” change ?
Ans: (May or may not change) //*this will be Depends, not NO, consider a graph whose one
path from A to B has 4 edges of 1 and other path with 2 and 3, now add 1 to all edges..now
shortest path becomes 2 and 3*
11. how many '0' in 100! ? ans: 24 (/5+⅘)100/5+20
12. For recursive fibonacci , what is its complexity ? ans : O(2 pow n)
13.
i=2,
printf("%d%d",++i,++i)
Ans : May be depend on compiler. Check it.
14.
int c[]={2,3,4,5,6},
int *p=c, int *q=c,
(1)for(i=1 to 5){printf("%d",*c); q++}
(2)for(i=1 to 5){printf("%d",*p); p++}
15. x=4|3<<4 ; x= ? ans : 52
16. x= 2, y= 4, z=10 ; if (x<y<z) {printf("abc")} else {printf("pqr")} ? Ans : abc
17. x=1; mask = ~(x<<5 1)
18. What is
(1) mask & 48
(2) mask & 64
(3) mask & 121
Ans: 32 64 105
19. In an page fault system implementation , what is “good” way to access pages ?
(1) Linear search
(2) Arithmetic indirection
(3) Binary search .
(4) Vector Operation
Ans : 4)and (1)..it was a multiple correct type
20. which of the foll gives most efficient way to access elements sequentially?
(1) LL
(2) DLL
(3) vectors
21. what is the output ?
class A {public: void foo(){printf("a");}};
class B : public A { public: void foo(){printf("b")}};
class C : public B { public: void foo(){printf("c")}};
void foo(B &b){
b.foo();
}
main(){
C c;
foo(c);
}
output : b
22. What is the data structure that has O(log n)complexity on averaging for the operations:
search, insert, delete.
Ans : AVL Tree correct?
23. Find the output:
#include<stdio.h>
int fun(int num) {
while(num > 0) {
num=num*fun(num1);
}
return num;
}
void main() {
x = fun(8);
printf(“%d”,x);
}
Ans : 0
24. Find the output:
int fun(int num)
{
if(num<3)
return 3;
return num+fun(num2);
}
main()
{
int x=fun(12);
int y=fun(13);
printf(“%d %d”,x,y);
}
Ans : 43 51
25.
unsigned int i = 1<<10;
for(; i>=0; i)
printf(“%d\n”, i);
Ans: Infinite loop
26. how to call pointer to a function:
Ans:(*foo)(2) , foo(2) (both are correct)
27.
unsigned int a=1;
unsigned int b=~1;
int z=a*b;
printf(“%d”,z);
Ans: 2
28.
int n = 1000, c = 5;
do{
n/=c;
}while(c);
printf(“%d”, n);
Ans: Arithmetic error (divide by 0)
29.
class A{
public: A()
{
cout <<”AC ”;
}
~A()
{
cout <<”AD “;
}
};
class B: public A
{
public: B()
{ cout<<”BC “;
}
~B(){cout <<”BD “;}
};
main()
{
B *b1 = new B();
B b2;
}
Ans: AC BC AC BC BD AD
30.
int fun(int num){
if(num < 3) return 3;
return num + fun(num2);
}
main(){
printf(“%d %d\n”, fun(12), fun(13));
}
Ans: 43,51
31.
void swap(int *a, int *b)
(a) call by name
(b) call by value
(c) call by reference
(d) call by pointer
Ans: Call By Pointer becoz in C++ we have both CBR and CBP and in C++ for CBR we dont
use * in operation we refer object only just by their name in CBR
32.
int fun(int num){
int val = num<<3;
val += num;
return val;
}
main(){
printf(“%d %d %d\n”, fun(0), fun(1), fun(3));
}
Ans: 0 9 27
33.
int MAX=1000;
int a[MAX][MAX];
for(i=0;i<MAX;i++)
for(j=0;j<MAX;j++)
a[j]=i*j;Q.1.
code 1:
code 2:
int MAX=1000;
int a[MAX][MAX];
for(i=0;i<MAX;i++)
for(j=0;j<MAX;j++)
a[i]=i*j;
Which is correct?
a. code 1 is faster
b. code 2 is faster
c. both are same in RISC architecture
d. both are about same
Hint : Caching Mechanism; Refer COA/OS class note of ACE
34. What is the output:
unsigned int x = 1;
int y = ~0;
printf(“%u,%d”,x,)y;
if(x==y)
printf(“same”);
else
printf(“not same”);
a. compilation error.
b. 45….,1
same
c. 45….,1
not same
d. i don’t remember
Ans : B
Sample Coding Questions
Question-1
With a specific color denoted by single character eg. for blue ‘B’. If one position is clicked
(x,y), colour present at that position would be deleted. If the same colour is present in
neighbourhood (up/down/left/right) then it would also be deleted. After deletion blank spaces
will be replaced by the value present in the cell above that. In case no value present above the1.
Given a 2D matrix. Each cell was filled cell then blank entry will be replaced by 0.
Input
x:1 y:1
BGB
BGG
BBB
Output
B00
B0B
BBB
Question-2
Given a linkedlist swap the alternative nodes (assume list have even number of nodes.)
Input : 11>12>13>14
Output : 12>11>14>13
Question-3
Given 2 strings, check if they are anagrams of each other.
Question-4
Let the LL be, 1>2>3>4>5 and n = 2, then resultant list will be: 1>3>5
Question-5
Question-6
Question-7
Struct Move{
int p; //Player number
int x; //x and y pos in the tictactoi
int y;
struct Move *next;
};
The sample function to write is:
void playGame(struct Move *move, int N)
Question-8
consider a position 1 after you made it 1 in your past computation.
sample(input):
(i)00100
(ii)10 00000 01
output:
(i)11111
(ii)11 00100 11
Refer GeekForGeeks for solution of the above coding questions.
Courtesy : Inter IIT Placement Group.
No comments :
Post a Comment