Company: Tata Consultancy Services (TCS)

1. The C language terminator is
(a) semicolon (b) colon (c) period (d) exclamation mark

2. 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.

3. 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

4. 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

5. 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 initialized to zero (d) They are global

6. Write one statement equivalent to the following two statements: x=sqr(a); return(x); Choose from one of the alternatives
(a) return(sqr(a)); (b) printf(“sqr(a)”);
(c) return(a*a*a); (d) printf(“%d”,sqr(a));

7. Which of the following about the C comments is incorrect ?
(a) Comments 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

8. 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

9. 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

10. 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

11. Which of the following is not an infinite loop ?
(a) while(1){ ….} (b) for(;;){…}
(c) x=0; (d) # define TRUE 0
do{ /*x unaltered within the loop*/ …
…..}while(x = = 0); while(TRUE){ ….}

12. 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

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

(a) p= p+x; (b) p=p+xq=q+y; (c) p= p+xq; (d) p=p+x/q=q+y;
q=q+y; q=q+y;
For questions 14,15,16,17 use the following alternatives:
a. int b. char c. string d. float

14. ‘9’

15. “1 e 02”

16. 10e05

17. 15

18. Read the following code
# define MAX 100
# define MIN 100
else if(x>=b (d) a**=b

27. What is y value of the code if input x=10
if (x==10)
else if(x==9)
else y=8;
(a)9 (b)8 (c)6 (d)7

28. 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 interest for 1 year

while(a<5) printf("%d\n",a++); How many times does the loop occurs? (a) infinite (b)5 (c)4 (d)6 30. How many times does the loop iterated ? for(i=0;i=10;i+=2) printf("Hi\n"); (a)10 (b) 2 (c) 5 (d) None of these 31. 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 32. 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;..} 33. Consider the following program main() { unsigned int i=10; while(i>=0)
How many times the loop will get executed
(a)10 (b)9 (c)11 (d) infinite

34.Pick out the odd one out
(a) malloc() (b) calloc() (c) free() (d) realloc()

35.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

36. # define prod(a,b)=a*b
int x=2;
int y=3;
the output of the program is
(a) 8 (b) 6 (c) 7 (d) None

37.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

38. Identify the incorrect one
int func(int n)
static sum=0;
The final value of x is
(a) 6 (b) 8 (c) 1 (d) 3

42. Int *a[5] refers to
(a) array of pointers (b) pointer to an array (c) pointer to a pointer (d) none of these

43.Which of the following statements is incorrect
(a) typedef struct new
int n1;
char n2;

(b) typedef struct
int n3;
char *n4;

(c) typedef union
int n5;
float n6;
} UDT;

(d) #typedef union
int n7;
float n8;