HCL TECHNOLOGIES PLACEMENT PAPERS – TECHNICAL QUESTIONS 31 – 45
PAPER : TECHNICAL QUESTIONS
31. Answer the Questions Based on the Following Program
STRUCT DOUBLELIST
{
DOUBLE CLINKED
INT DET; LIST VOID
STRUCT PREVIOUS; (BE GIVEN AND A PROCEDURE TO DELETE)
STRUCT NEW; (AN ELEMENT WILL BE GIVEN)
}
DELETE(STRUCT NODE)
{
NODE-PREV-NEXT NODE-NEXT;
NODE-NEXT-PREV NODE-PREV;
IF(NODE==HEAD)
NODE
}
32. In what case the prev was
(a) All cases
(b) It does not work for the last element
(c) It does not for the first element
(d) None of these
33. Answer the questions based on the following program
VOID FUNCTION(INT KK)
{
KK+=20;
}
VOID FUNCTION (INT K)
INT MM,N=&M
KN = K
KN+-=10;
}
34.What is the output of the following Program
main()
{
int var=25,varp;
varp=&var;
varp p = 10;
fnc(varp)
printf(“%d%d,var,varp);
}
(a) 20,55
(b) 35,35
(c) 25,25
(d)55,55
35. Here is the structure declaration of a doubly linked list
struct dlink
{
int nodeid;
struct dlink *next;
struct dlink *prev;
} dlink_t;
36. A pointer of the head of the linked list is maintained as a global variable, whose definition is
dlink_t *head; The funt remove_element(dlink_t *rp), needs to remove the node pointed to the
rp and adjust the head. The first node’s prev and the last node’s next are NULL.
remove_element(dlink_t *rp)
{
rp->prev->next = rp->next;
rp->next->prev = rp->prev;
if( head == rp)
head = rp->next;
}
37. Which of the following statement is true about the fution remove_element
a) It work when head is the same as rp
b) It does not work when rp is the last element on the list
c) It sets the head of the list correctly
d) It works in all cases
ANSWER :B
38. Consider the following function written in c:
#define NULL 0
char *
index(sp,c)
register char *sp,c;
{
do
{
if(*sp == c)
return (sp);
} while (*sp++);
return NULL;
}
39. The first argument sp, is a pointer to a C string. The second argument, c, is a character. This function scarches for the character c, in the string. If it is found a pointer to that location is returned else NULL is returned. This function works
A) Always
B) Always, but fails when the first byte contais the character c
C) Works when c is a non NULL character only
D) Works only when the character c is found in the string
ANSWER: A
40. What is printed when this program is executed
main()
{
printf (“%d\n”,f(7));
}
f(X)
{
if ( <= 4)
return x;
return f(–x);
}
A) 4 B) 5 C) 6 D) 7
ANSWER: A
41. On a machine where pointers are 4 bytes long, what happens when the following code is executed.
main()
{
int x=0,*p=0;
x++; p++;
printf (“%d and %d\n”,x,p);
}
a) 1 and 1 is printed
b) 1 and 4 is printed
c) 4 and 4 is printed
d) causes an exception
42. Which of the following is the correct code for strcpy, that is used to copy the contents from src to dest?
A) strcpy (char *dst,char *src)
{
while (*src)
*dst++ = *src++;
}
B) strcpy (char *dst,char *src)
{
while(*dst++ = *src++ )
}
C) strcpy (char *dst,char *src)
{
while(*src)
{
*dst = *src;
dst++; src++;
}
}
D) strcpy(char *dst, char *src)
{
while(*++dst = *++src);
}
Answer:B
43. Consider the following program
main()
{
int i=20,*j=&i;
f1(j);
*j+=10;
f2(j);
printf(“%d and %d”,i,*j);
}
f1(k)
int *k;
{
*k +=15;
}
f2(x)
int *x;
{
int m=*x,*n=&m;
*n += 10;
}
44. The values printed by the program will be
A) 20 and 55
B) 20 and 45
C) 45 and 45
D) 45 and 55
E) 35 and 35
45. what is printed when the following program is compiled and executed?
int
func (int x)
{
if (x<=0)
return(1);
return func(x -1) +x;
}
main()
{
printf(“%d\n”,func(5));
}
a) 12 b) 16 c) 15 d) 11
HCL TECHNOLOGIES PLACEMENT PAPERS - TECHNICAL QUESTIONS 31 - 45
0 comments:
Post a Comment