TCS Technical Questions

Posted on :18-01-2016

This test consists of 50 questions.The Set Code for this paper is D.

Q1. The C language terminator is 

(a) semicolon

(b) colon

(c) period

(d) exclamation mark

Q2. What is false about the following — A compound statement is 

(a) A set of simple statements

(b) Demarcated on either side by curly brackets

(c) Can be used in place of simple statement

(d) A C function is not a compound statement.

Q3. What is true about the following C Functions

(a) Need not return any value

(b) Should always return an integer

(c) Should always return a float

(d) Should always return more than one value

Q4. Main must be written as

(a) The first function in the program

(b) Second function in the program

(c) Last function in the program

(d) Any where in the program

Q5. Which of the following about automatic variables within a function is correct ?

(a) Its type must be declared before using the variable

(b) They are local

(c) They are not initialised to zero

(d) They are global

Q6. Write one statement equivalent to the following two statements 



Choose from one of the alternatives

(a) return(sqr(a));

(b) printf(“sqr(a)”);

(c) return(a*a*a);

(d) printf(“%d”,sqr(a));

Q7. Which of the following about the C comments is incorrect ?

(a) Ccomments can go over multiple lines

(b) Comments can start any where in the line

(c) A line can contain comments with out any language statements

(d) Comments can occur within comments 

Q8. What is the value of y in the following code?



if(x=6) y=7; 

else y=1; 

(a) 7

(b) 0

(c) 1

(d) 6

Q9. Read the function conv() given below

conv(int t){ 

int u; 

u=5/9 * (t-32);



What is returned

(a) 15

(b) 0

(c) 16.1

(d) 29

Q10. Which of the following represents true statement either x is in the range of 10 and 50 or y is zero

(a) x >= 10 && x <= 50 || y = = 0

(b) x<50

(c) y!=10 && x>=50

(d) None of these

Q11. Which of the following is not an infinite loop ?

(a) while(1){ ….}

(b) for(;;)



(c) x=0; 


/*x unaltered within the loop*/


while(x = = 0);

(d) # define TRUE 0



Q12. What does the following function print?

func(int i)

{ if(i%2)return 0; 

else return 1;}



int =3;





(a) 3

(b) 1

(c) 0

(d) 2

Q13. How does the C compiler interpret the following two statements



(a) p=p+x;






For questions 14,15,16,17 use the following alternatives




Q14. 9

Q15. 1 e 02

Q16. 10 e 05

Q17. 15

Q18. Read the folllowing code

# define MAX 100

# define MIN 100





else if(x<min)



if the initial value of x=200,what is the value after executing this code?

(a) 200</min)

(b) 1</min)

(c) -1</min)

(d) 50 </min)

Q19. A memory of 20 bytes is allocated to a string declared as char *s

then the following two statements are executed:





what is the value of l ?





Q20. Given the piece of code


int a[50];</min)

int *pa;</min)


To access the 6th element of the array which of the following is incorrect?

(a) *(a+5)

(b) a[5]

(c) pa[5]

(d) *(*pa + 5}

Q21. Consider the following structure:

struct num nam{

int no;

char name[25];


struct num nam n1[]={{12,”Fred”},{15,”Martin”},{8,”Peter”},{11,Nicholas”}};



printf(“%d%d”,n1[2],no,(*(n1 + 2),no) + 1);

What does the above statement print?

(a) 8,9

(b) 9,9

(c) 8,8

(d) 8,unpredictable value

Q22. Identify the in correct expression

(a) a=b=3=4;

(b) a=b=c=d=0;

(c)float a=int b=3.5;

(d)int a; float b; a=b=3.5;

Q23. Regarding the scope of the varibles;identify the incorrect statement:

(a)automatic variables are automatically initialised to 0

(b)static variables are are automatically initialised to 0

(c)the address of a register variable is not accessiable

(d)static variables cannot be initialised with any expression

Q24. cond 1?cond 2?cond 3?:exp 1:exp 2:exp 3:exp 4;

is equivalent to which of the following?

(a)if cond 1

exp 1;

else if cond 2

exp 2;

else if cond 3

exp 3;

else exp 4;

(b) if cond 1

if cond 2

if cond 3

exp 1; 

else exp 2;

else exp 3;

else exp 4;

(c) if cond 1 && cond 2 && cond 3

exp 1 |exp 2|exp 3|exp 4;

(d) if cond 3

exp 1;

else if cond 2 exp 2;

else if cond 3 exp 3;

else exp 4;

Q25. The operator for exponencation is

(a) **

(b) ^

(c) % 

(d) not available

Q26. Which of the following is invalid

(a) a+=b

(b) a*=b

(c) a>>=b

(d) a**=b 

Q27. What is y value of the code if input x=10


if (x==10)

else if(x==9)

else y=8;





Q28. What does the following code do?

fn(int n,int p,int r){

static int a=p;


case 4:a+=a*r;

case 3:a+=a*r;

case 2:a+=a*r;

case 1:a+=a*r;}}

(a)computes simple interest for one year

(b)computes amount on compound interest for 1 to 4 years

(c)computes simple interest for four year 

(d)computes compound interst for 1 year


Q29. How many times does the loop occurs?



printf(“%d “,a++);





Q30. How many times does the loop iterated ?

for (i=0;i=10;i+=2)

printf(“Hi “);


(b) 2

(c) 5

(d) None of these

Q31. What is incorrect among the following

A recursive function

(a) calls itself

(b) is equivalent to a loop

(c) has a termination condition

(d) does not have a return value at all 

Q32. Which of the following go out of the loop if expn 2 becoming false

(a) while(expn 1){…if(expn 2)continue;}

(b) while(!expn 1){if(expn 2)continue;…}

(c) do{..if(expn 1)continue;..}while(expn 2);

(d) while(!expn 2){if(expn 1)continue;..}

Q33. Consider the following program


{unsigned int i=10;





How many times the loop will get executed





Q34. Pick out the add one out

(a) malloc()

(b) calloc()

(c) free()

(d) realloc() 

Q35. Consider the following program


int a[5]={1,3,6,7,0};

int *b;



The value of b[-1] is

(a) 1

(b) 3

(c) -6

(d) none


# define prod(a,b)=a*b


int x=2;

int y=3; 

printf(“%d”,prod(x+2,y-10)); }

the output of the program is 

(a) 8

(b) 6

(c) 7

(d) None


Q37. Consider the following program segment

int n,sum=1;


case 2:sum=sum+2;

case 3:sum*=2;



If n=2, what is the value of sum

(a) 0

(b) 6

(c) 3 

(d) None of these

Q38. Identify the incorrect one






<b)then(a) 1 only</b)then

<b)then(b) 1&3</b)then

<b)then(c) 3 only</b)then

<b)then(d) All of the above</b)then

Q39. The format specified for hexa decimal is

<b)then </b)then

<b)then(a) %d</b)then

<b)then(b) %o</b)then

<b)then(c) %x</b)then

<b)then(d) %u</b)then

Q40. Find the output of the following program

<b)then </b)then


<b)thenint x=5, *p;</b)then


<b)thenprintf(“%d”,++*p); </b)then



<b)then(a) 5</b)then

<b)then(b) 6</b)then

<b)then(c) 0</b)then

<b)then(d) none of these</b)then

Q41. Consider the following C code

<b)then </b)then


<b)thenint i=3,x;</b)then



<b)theni–; }</b)then


<b)thenint func(int n){</b)then

<b)thenstatic sum=0;</b)then



The final value of x is

<b)then(a) 6</b)then

<b)then(b) 8</b)then

<b)then(c) 1</b)then

<b)then(d) 3</b)then

Q43. Int *a[5] refers to

<b)then(a) array of pointers</b)then

<b)then(b) pointer to an array</b)then

<b)then(c) pointer to a pointer </b)then

<b)then(d) none of these</b)then

Q44. Which of the following statements is incorrect

<b)then </b)then

<b)then(a) typedef struct new{</b)then

<b)thenint n1;</b)then

<b)thenchar n2;</b)then

<b)then} DATA;</b)then


<b)then(b) typedef struct {</b)then

<b)thenint n3;</b)then

<b)thenchar *n4;}ICE;</b)then


<b)then(c) typedef union{ int n5;</b)then

<b)thenfloat n6;} UDT;</b)then


<b)then(d) #typedef union { </b)then

<b)thenint n7; </b)then

<b)thenfloat n8;} TUDAT;</b)then