Tcs c++ Apptiude questions and Answers

Posted by Stephen thangaraj at 02:09
Base class has some virtual method and derived class has a method with the same name. If we initialize the base class pointer with derived object, calling of that virtual method will result in which method being called? 
a. Base method
b. Derived method..

Ans. b

For the following C program

#define AREA(x)(3.14*x*x)

main()

{float r1=6.25,r2=2.5,a;
a=AREA(r1);
printf("\n Area of the circle is %f", a);
a=AREA(r2);
printf("\n Area of the circle is %f", a);
}

What is the output?

Ans. Area of the circle is 122.656250
        Area of the circle is  19.625000

void main()

{

int d=5;

printf("%f",d);
}


Ans: Undefined

void main()

{

int i;

for(i=1;i<4,i++)
switch(i)
case 1: printf("%d",i);break;
{
case 2:printf("%d",i);break;
case 3:printf("%d",i);break;
}
switch(i) case 4:printf("%d",i);
}


Ans: 1,2,3,4

void main()

{

char *s="\12345s\n";

printf("%d",sizeof(s));
}


Ans: 6

void main()

{

unsigned i=1; /* unsigned char k= -1 => k=255; */

signed j=-1; /* char k= -1 => k=65535 */
/* unsigned or signed int k= -1 =>k=65535 */
if(i


printf("less");

else

if(i>j)

printf("greater");
else
if(i==j)
printf("equal");
}


Ans: less

void main()

{

float j;

j=1000*1000;
printf("%f",j);
}

1. 1000000
2. Overflow
3. Error
4. None 

Ans: 4
How do you declare an array of N pointers to functions returning  pointers to functions returning pointers to characters?

Ans: The first part of this question can be answered in at least
        three ways:

    1. char *(*(*a[N])())();

    2. Build the declaration up incrementally, using typedefs:

        typedef char *pc;    /* pointer to char */
        typedef pc fpc();    /* function returning pointer to char */
        typedef fpc *pfpc;    /* pointer to above */
        typedef pfpc fpfpc();    /* function returning... */
        typedef fpfpc *pfpfpc;    /* pointer to... */
        pfpfpc a[N];         /* array of... */

    3. Use the cdecl program, which turns English into C and vice
    versa:

        cdecl> declare a as array of pointer to function returning
            pointer to function returning pointer to char
        char *(*(*a[])())()

    cdecl can also explain complicated declarations, help with
    casts, and indicate which set of parentheses the arguments
    go in (for complicated function definitions, like the one
    above).
    Any good book on C should explain how to read these complicated
    C declarations "inside out" to understand them ("declaration
    mimics use").
    The pointer-to-function declarations in the examples above have
    not included parameter type information. When the parameters
    have complicated types, declarations can *really* get messy.
    (Modern versions of cdecl can help here, too.)

What are the number of syntax errors ? 

int f()

void main()

{
f(1);
f(1,2);
f(1,2,3);
}
f(int i,int j,int k)
{
printf("%d %d %d",i,j,k);
}


Ans: None.

void main()

{

int i=7;

printf("%d",i++*i++);
}


Ans: 56

#define one 0

#ifdef one 

printf("one is defined ");

#ifndef one
printf("one is not defined ");


Ans: "one is defined"

void main()

{

int count=10,*temp,sum=0;

temp=&count;
*temp=20;
temp=∑
*temp=count;
printf("%d %d %d ",count,*temp,sum);
}


Ans: 20 20 20
What is alloca()
Ans : It allocates and frees memory after use/after getting out of scope

main()

{

static i=3;

printf("%d",i--);
return i>0 ? main():0;
}


Ans: 321

char *foo()

{

char result[100]);

strcpy(result,"anything is good");
return(result);
}
void main()
{
char *j;
j=foo()
printf("%s",j);
}


Ans: anything is good.

void main()

{

char *s[]={ "dharma","hewlett-packard","siemens","ibm"};

char **p;
p=s;
printf("%s",++*p);
printf("%s",*p++);
printf("%s",++*p);
}


Ans: "harma" (p->add(dharma) && (*p)->harma)
"harma" (after printing, p->add(hewlett-packard) &&(*p)->harma)
"ewlett-packard"

Output of the following program is

main()

{int i=0;

for(i=0;i<20;i++)
{switch(i)
case 0:i+=5;
case 1:i+=2;
case 5:i+=5;
default i+=4;
break;}
printf("%d,",i);
}
}

a) 0,5,9,13,17
b) 5,9,13,17
c) 12,17,22
d) 16,21
e) Syntax error

Ans. (d)

What is the ouptut in the following program

main()

{char c=-64;

int i=-32
unsigned int u =-16;
if(c>i)
{printf("pass1,");
if(c


printf("pass2");

else

printf("Fail2");

}
else
printf("Fail1);
if(i


printf("pass2");

else

printf("Fail2")

}


a) Pass1,Pass2
b) Pass1,Fail2
c) Fail1,Pass2
d) Fail1,Fail2
e) None of these

Ans. (c)

What will the following program do?

void main()
{

int i;

char a[]="String";
char *p="New Sring";
char *Temp;
Temp=a;
a=malloc(strlen(p) + 1);
strcpy(a,p); //Line number:9//
p = malloc(strlen(Temp) + 1);
strcpy(p,Temp);
printf("(%s, %s)",a,p);
free(p);
free(a);
} //Line number 15//

a) Swap contents of p & a and print:(New string, string)
b) Generate compilation error in line number 8
c) Generate compilation error in line number 5
d) Generate compilation error in line number 7
e) Generate compilation error in line number 1

Ans. (b)
In the following code segment what will be the result of the function,

value of x , value of y

{unsigned int x=-1;

int y;

y = ~0;
if(x == y)
printf("same");
else
printf("not same");
}


a) same, MAXINT, -1
b) not same, MAXINT, -MAXINT
c) same , MAXUNIT, -1
d) same, MAXUNIT, MAXUNIT
e) not same, MAXINT, MAXUNIT

Ans. (a)

What will be the result of the following program ?

char *gxxx()

{static char xxx[1024];

return xxx;
}
main()
{char *g="string";
strcpy(gxxx(),g);
g = gxxx();
strcpy(g,"oldstring");
printf("The string is : %s",gxxx());
}


a) The string is : string
b) The string is :Oldstring
c) Run time error/Core dump
d) Syntax error during compilation
e) None of these

Ans. (b)

Find the output for the following C program 

main()
{

char *p1="Name";

char *p2;
p2=(char *)malloc(20);
while(*p2++=*p1++);
printf("%s\n",p2);
}


 Ans. An empty string

Find the output for the following C program

main()
{

int x=20,y=35;

x = y++ + x++;
y = ++y + ++x;
printf("%d %d\n",x,y);
}


Ans. 57 94

Find the output for the following C program

main()
{

int x=5;

printf("%d %d %d\n",x,x<<2,x>>2);
}


Ans. 5 20 1

Find the output for the following C program

#define swap1(a,b) a=a+b;b=a-b;a=a-b;

main()

{
int x=5,y=10;
swap1(x,y);
printf("%d %d\n",x,y);
swap2(x,y);
printf("%d %d\n",x,y);
}
int swap2(int a,int b)
{
int temp;
temp=a;
b=a;
a=temp;
return;
}


Ans. 10 5

Find the output for the following C program

main()
{

char *ptr = "Ramco Systems";

(*ptr)++;
printf("%s\n",ptr);
ptr++;
printf("%s\n",ptr);
}


Ans. Samco Systems

Find the output for the following C program

#include

main()

{
char s1[]="Ramco";
char s2[]="Systems";
s1=s2;
printf("%s",s1);
}


Ans. Compilation error giving it cannot be an modifiable 'lvalue'

Find the output for the following C program

#include

main()

{
char *p1;
char *p2;
p1=(char *) malloc(25);
p2=(char *) malloc(25);
strcpy(p1,"Ramco");
strcpy(p2,"Systems");
strcat(p1,p2);
printf("%s",p1);
}


 Ans. RamcoSystems

Find the output for the following C program

# define TRUE 0

some code

while(TRUE)
{
some code 
}


Ans. This won't go into the loop as TRUE is defined as 0

      struct list{

       int x; 

      struct list *next; 

      }*head; 

        the struct head.x =100 



Is the above assignment to pointer is correct or wrong ?

Ans. Wrong


What is the output of the following ?

      int i; 

      i=1; 

      i=i+2*i++; 
      printf(%d,i);

Ans. 4

      FILE *fp1,*fp2; 

      

      fp1=fopen("one","w") 

      fp2=fopen("one","w") 
      fputc('A',fp1) 
      fputc('B',fp2) 
      fclose(fp1) 
      fclose(fp2) 
     }


Find the Error, If Any?
Ans. no error. But It will over writes on same file.


What are the output(s) for the following ?

     #define MAN(x,y) (x)>(y)?(x):(y) 

      {int i=10;

      j=5;

      k=0;
      k=MAX(i++,++j);
      printf(%d %d %d %d,i,j,k);
      }

Ans. 10 5 0

void main()

{

int i=7;

printf("%d",i++*i++);
}


Ans: 56





click the Below link download this file 



If you enjoyed this post and wish to be informed whenever a new post is published, then make sure you subscribe to my regular Email Updates. Subscribe Now!


Kindly Bookmark and Share it:

YOUR ADSENSE CODE GOES HERE

0 comments:

Have any question? Feel Free To Post Below:

Blog Archive

 

© 2011. All Rights Reserved | Interview Questions | Template by Blogger Widgets

Home | About | Top