Line 843: Line 843:
  
  
{'''31. Consider the following program:'''
+
{'''Consider the following program:'''
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
 
#include<stdio.h>
 
#include<stdio.h>
Line 860: Line 860:
  
 
</quiz>
 
</quiz>
'''32. Consider the following program:'''
+
'''{Consider the following program:'''
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
 
#include<stdio.h>
 
#include<stdio.h>
Line 875: Line 875:
 
'''What is the output of this program?'''
 
'''What is the output of this program?'''
 
(You may ignore compiler warnings)
 
(You may ignore compiler warnings)
 +
|type="{}"
 +
/}
 +
{ 600 }
  
'''Ans''':
 
  
  
Line 899: Line 901:
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
|type="{}"
 +
/}
 +
{ 10 }
  
'''Ans''':
 
  
  
Line 909: Line 913:
 
{
 
{
 
     int *a = fun();
 
     int *a = fun();
     printf("%d",*a);
+
     printf("%d",a);
  
 
     return 0;
 
     return 0;
Line 919: Line 923:
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
|type="{}"
 +
/}
 +
{ 10 }
  
'''Ans''':
 
  
  
'''35. What is the output of the following program?'''
+
'''{What is the output of the following program?'''
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
 
#include<stdio.h>
 
#include<stdio.h>
Line 931: Line 937:
 
{
 
{
 
     char string[] = "Hello";
 
     char string[] = "Hello";
     printf("%lu %lu",sizeof(string),strlen(string));
+
     printf("%zu %zu",sizeof(string),strlen(string));
  
 
     return 0;
 
     return 0;
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
|type="{}"
 +
/}
 +
{ 6 5 }
  
'''Ans''':
 
  
  
'''36. What is the output of the following program?'''
+
'''{ What is the output of the following program?'''
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
 
#include<stdio.h>
 
#include<stdio.h>
Line 954: Line 962:
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
|type="{}"
 +
/}
 +
{ Yes }
  
'''Ans''':
 
  
  
'''37. What is the output of the following program?'''
+
'''{What is the output of the following program?'''
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
 
#include<stdio.h>
 
#include<stdio.h>
Line 972: Line 982:
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
|type="{}"
'''Ans''':
+
/}
 +
{ 1 }
  
  
  
 
 
'''38. What is the output of the following program?'''
+
'''{What is the output of the following program?'''
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
 
#include<stdio.h>
 
#include<stdio.h>
Line 989: Line 1,000:
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
|type="{}"
 +
/}
 +
{ 1 }
  
  
'''Ans''':
+
'''{ If the binary equivalent of 5.375 in normalised form is 0100 0000 1010 1100 0000
 
 
'''39. If the binary equivalent of 5.375 in normalised form is 0100 0000 1010 1100 0000
 
 
0000 0000 0000, what will be the output of the following program?'''
 
0000 0000 0000, what will be the output of the following program?'''
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
Line 1,011: Line 1,023:
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
'''Ans''':
+
|type="{}"
 +
/}
 +
{ 1 }
  
  
'''40. What is the output of the following program?'''
+
'''{ What is the output of the following program?'''
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
 
#include<stdio.h>
 
#include<stdio.h>
Line 1,026: Line 1,040:
 
}
 
}
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
|type="{}"
 +
/}
 +
{ 1 }
 +
==Some codes==
  
'''Ans''':
+
'''1. What is the following function doing?'''
 
 
 
'''41. What is the following function doing?'''
 
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
 
int foo(int n)
 
int foo(int n)
Line 1,047: Line 1,062:
  
  
'''42. What is the following function doing?'''
+
'''2. What is the following function doing?'''
 
<syntaxhighlight lang="c">
 
<syntaxhighlight lang="c">
 
int foo(int a, int b)
 
int foo(int a, int b)

Revision as of 20:25, 19 May 2014

<quiz display="simple"> {What is the output of this program? <syntaxhighlight lang="c" >

  1. include<stdio.h>

int main() {

   char *ptr;
   char string[] = "How are you?";
   ptr = string;
   ptr += 4;
   printf("%s",ptr);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) How are you?

+(b) are you?

-(c) are

-(d) No output


{ Which of the following will print the value 2 for the above code? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a[10][20][30] = {0};
   a[5][2][1] = 2;
   return 0;

} </syntaxhighlight> |type="()" /} -(a) printf("%d",*(((a+5)+2)+1));

-(b) printf("%d",***((a+5)+2)+1);

+(c) printf("%d",*(*(*(a+5)+2)+1));

-(d) None of these


{ What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a = 5;
   int b = ++a * a++;
   printf("%d ",b);
   return 0;

} </syntaxhighlight> |type="()" /} -(a)25

-(b) 30

-(c) 36

+(d) Undefined Behavior


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a = 5;
   switch(a)
   {
       default:
       a = 4;
       case 6:
           a--;
       case 5:
           a = a+1;
       case 1:
           a = a-1;
   }
   printf("%d \n",a);
   return 0;

} </syntaxhighlight> |type="()" /} +(a) 5

-(b) 4

-(c) 3

-(d) None of these


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a = 2,b = 5;
   a = a^b;
   b = b^a;
   printf("%d %d",a,b);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 5 2

-(b) 2 5

-(c) 7 7

+(d) 7 2


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

int main() {

   int a[][3] = {1, 2, 3, 4, 5, 6};
   int (*ptr)[3] = a;
   printf("%d %d ", (*ptr)[1], (*ptr)[2]);
   ++ptr;
   printf("%d %d\n", (*ptr)[1], (*ptr)[2]);
   return 0;

} </syntaxhighlight> |type="()" /} +(a) 2 3 5 6

-(b) 2 3 4 5

-(c) 4 5 0 0

-(d) none of the above


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

void f(char**);

int main() {

   char *argv[] = { "ab", "cd", "ef", "gh", "ij", "kl" };
   f(argv);
   return 0;

} void f(char **p) {

   char *t;
   t = (p += sizeof(int))[-1];
   printf("%s\n", t);

} </syntaxhighlight> |type="()" /} -(a) ab

-(b) cd

-(c) ef

+(d) gh


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdarg.h>
  2. include <stdio.h>

int ripple(int n, ...) {

   int i, j, k;
   va_list p;
   k = 0;
   j = 0;
   va_start(p, n);
   for (; j < n; ++j)
   {
       i = va_arg(p, int);
       k += i;
   }
   va_end(p);
   
   return k;

} int main() {

   printf("%d\n", ripple(2, 5, 7));
   return 0;

} </syntaxhighlight> |type="()" /} +(a) 12

-(b) 5

-(c) 7

-(d) 15


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

int counter(int i) {

   static int count = 0;
   count = count + i;
   
   return count;

}

int main() {

   int i, j;
   for (i = 0; i <= 5; i++)
       j = counter(i);
   printf("%d\n", j);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 10

+(b) 15

-(c) 6

-(d) 7


{ What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   const int x = 5;
   const int *ptrx;
   ptrx = &x;
   *ptrx = 10;
   printf("%d\n", x);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 5

-(b) 10

+(c) Compile Error

-(d) Garbage value


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>
  2. define x 4+1

int main() {

   int i;
   i = x*x*x;
   printf("%d",i);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 125

+(b) 13

-(c) 17

-(d) None of above


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   char c=125;
   c=c+10;
   printf("%d",c);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 135

-(b) +INF

+(c) -121

-(d) -8


{ What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int i=10;
   static int x=i;
   if(x==i)
       printf("Equal");
   else if(x>i)
       printf("Greater");
   else
       printf("Lesser");
   return 0;

} </syntaxhighlight> |type="()" /} -(a) Equal

-(b) Greater

-(c) Lesser

+(d) Compile Error


{Consider the following code segment: <syntaxhighlight lang="c">

  1. include <stdlib.h>

int *f1() {

   int x = 10;
   return &x;

} int *f2() {

   int *ptr;
   *ptr = 10;
   return ptr;

} int *f3() {

   int *ptr;
   ptr = (int*) malloc(sizeof (*ptr));
   return ptr;

} </syntaxhighlight> Which of these functions uses pointers incorrectly? |type="()" /} +(a) f3 only

-(b) f1 and f3

-(c) f1 and f2

-(d) f1, f2, and f3


{ What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

int main() {

   int i = 3;
   int j;
   j = sizeof(++i + ++i);
   printf("i=%d j=%d\n", i, j);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) i=4 j=4

+(b) i=3 j=4

-(c) i=5 j=4

-(d) the behavior is undefined


{ What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

void f1(int*, int); void f2(int*, int); void (*p[2])(int*, int);

int main() {

   int a = 3;
   int b = 5;
   p[0] = f1;
   p[1] = f2;
   p[0](&a, b);
   printf("%d %d ", a, b);
   p[1](&a, b);
   printf("%d %d\n", a, b);
   return 0;

}

void f1(int *p, int q) {

   int tmp = *p;
   *p = q;
   q = tmp;

} void f2(int *p, int q) {

   int tmp = *p;
   *p = q;
   q = tmp;

} </syntaxhighlight> |type="()" /} +(a) 5 5 5 5

-(b) 3 5 3 5

-(c) 5 3 3 5

-(d) none of the above


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

void e(int);

int main() {

   int a = 3; 
   e(a);
   putchar('\n');
   return 0;

} void e(int n) {

   if (n > 0)
   {
       e(--n);
       printf("%d ", n);
       e(--n);
   }

} </syntaxhighlight> |type="()" /} +(a)0 1 2 0

-(b) 0 1 2 1

-(c) 1 2 0 1

-(d) 0 2 1 1


{ Consider the following code segment: <syntaxhighlight lang="c"> typedef int (*test)(float*, float*); test tmp; </syntaxhighlight> What is the type of tmp? |type="()"

/} -(a) function taking two pointer-to-float arguments and returning pointer to int

-(b) pointer to int

+(c) pointer to function taking two pointer-to-float arguments and returning int

-(d) none of the above


{ What is the output of the following program?' <syntaxhighlight lang="c">

  1. include <stdio.h>

int main() {

   char p;
   char buf[10] = {1, 2, 3, 4, 5, 6, 9, 8};
   p = (buf + 1)[5];
   printf("%d\n", p);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 5

-(b) 6

+(c) 9

-(d) none of the above


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

int main() {

   struct node
   {
       int a;
       int b;
       int c;
   };
   struct node s = { 3, 5, 6 };
   struct node *pt = &s;
   printf("%d\n", *((int*)pt+1));
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 3

+(b) 5

-(c) 6

-(d) 7


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

int main(void) {

   char a[5] = { 1, 2, 3, 4, 5 };
   char *ptr = (char*)(&a + 1);
   printf("%d %d\n", *(a + 1), *(ptr - 1));
   return 0;

} </syntaxhighlight> |type="()" /} -(a) Compile Error

-(b) 2 1

+(c) 2 5

-(d) none of the above


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

void foo(int[][3]);

int main(void) {

   int a[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };
   foo(a);
   printf("%d\n", a[2][1]);
   return 0;

}

void foo(int b[][3]) {

   ++b;
   b[1][1] = 9;

} </syntaxhighlight> |type="()" /} -(a) 8

+(b) 9

-(c) 7

-(d) none of the above


{Consider the following function: <syntaxhighlight lang="c"> int foo(int x, int n) {

   int val = 1;
   if (n > 0)
   {
       if (n % 2 == 1)
       val *= x;
       val *= foo(x * x, n / 2);
   }
   return val;

} </syntaxhighlight>

What function of x and n is computed by foo? |type="()" /} +(a) $x^n$

-(b) $x×n$

-(c) $n^x$

-(d) none of the above

{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a = 0;
   switch(a)
   {
       default:
           a = 4;
       case 6:
           a--;
       case 5:
           a = a+1;
       case 1:
           a = a-1;
   }
   printf("%d \n",a);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 5

-(b) 4

+(c) 3

-(d) 0


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a = 2;
   if(a == (1,2))
       printf("Hello");
   if(a == 1,2)
       printf("World");
   return 0;

} </syntaxhighlight> |type="()" /} -(a) Hello

-(b) World

+(c) HelloWorld

-(d) Compile Error


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a = 1,2;
   int b = (1,2);
   if(a == b)
       printf("Equal");
   else
       printf("Not Equal");
   return 0;

} </syntaxhighlight> |type="()" /} -(a) Equal

-(b) Not Equal

-(c) Compiler Dependent

+(d) Compile Error


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

void foo(char *);

int main() {

   char *string = "Hello";
   foo(string);
   printf("%s",string);
   return 0;

}

void foo(char *a) {

   while(*a)
   {
       *a += 1;
       a++;
   }

} </syntaxhighlight> |type="()" /} -(a) Hello

-(b) Ifmmp

-(c) Compile Error

+(d) Segmentation fault


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>
  2. include<stdlib.h>

int main() {

   char s[] = "Hello World";
   int i = 0;
   while(*(s++))
       i++;
   printf("%d",i);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) Segmentation Fault

+(b) Compile Error

-(c) 12

-(d) 0


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int a = 10; int main() {

   fun();
   fun();
   return 0;

}

int fun() {

   static int a = 1;
   printf("%d ",a);
   a++;
   return 0;

} </syntaxhighlight> |type="()" /} +(a) 1 2

-(b) 1 1

-(c) 10 11

-(d) 10 10


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>
  2. define crypt(s,t,u,m,p,e,d) m##s##u##t
  3. define begin crypt(a,n,i,m,a,t,e)

int begin() {

   printf("Hello\n");
   return 0;

} </syntaxhighlight> |type="()" /} +(a) Hello

-(b) Link error

-(c) Segmentation fault

-(d) Compiler error


{Consider the following program: <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a[10][20][30]={0};
   printf("%ld",&a+1 - &a);
   return 0;

} </syntaxhighlight> What is the output of this program? |type="{}" /} { 1 }

</quiz> {Consider the following program: <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a[10][20][30] = {0};
   int *b = a;
   int *c = a+1;
   printf("%ld", c-b);
   return 0;

} </syntaxhighlight> What is the output of this program? (You may ignore compiler warnings) |type="{}" /} { 600 }


33. What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>
  2. include<stdlib.h>

int* fun();

int main() {

   int *a = fun();
   printf("%d",*a);
   return 0;

} int* fun() {

   int *a =(int*) malloc(sizeof(int));
   *a = 10;
   return a;

} </syntaxhighlight> |type="{}" /} { 10 }


34. What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int *a = fun();
   printf("%d",a);
   return 0;

} int fun() {

   int a = 10;
   return a;

} </syntaxhighlight> |type="{}" /} { 10 }


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>
  2. include<string.h>

int main() {

   char string[] = "Hello";
   printf("%zu %zu",sizeof(string),strlen(string));
   return 0;

} </syntaxhighlight> |type="{}" /} { 6 5 }


{ What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   float a = 0.5;
   if(a == 0.5)
       printf("Yes");
   else
       printf("No");
   return 0;

} </syntaxhighlight> |type="{}" /} { Yes }


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>
  2. include<string.h>

void foo(char *);

int main() {

   char a[100] = {0};
   printf("%lu %lu",sizeof(a),strlen(a));
   return 0;

} </syntaxhighlight> |type="{}" /} { 1 }



{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a;
   printf("%d",scanf("%d",&a));
   return 0;

} </syntaxhighlight> |type="{}" /} { 1 }


{ If the binary equivalent of 5.375 in normalised form is 0100 0000 1010 1100 0000 0000 0000 0000, what will be the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>
  2. include<math.h>

int main() {

   float a=5.375;
   char *p;
   int i;
   p = (char*)&a;
   for(i=0; i<2; i++)
       printf("%02x ", (unsigned char)(p[i]^p[3-i]));
   return 0;

} </syntaxhighlight> |type="{}" /} { 1 }


{ What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   char str[] = {'a','b','c','\0'};
   str[0] -= 32;
   printf("%s",str);
   return 0;

} </syntaxhighlight> |type="{}" /} { 1 }

Some codes

1. What is the following function doing? <syntaxhighlight lang="c"> int foo(int n) {

   int sum = 0;
   while(n > 0)
   {
       n = n & n-1;
       sum++;
   }
   return sum;

} </syntaxhighlight> Ans:


2. What is the following function doing? <syntaxhighlight lang="c"> int foo(int a, int b) {

   int c = a, d = b;
   while(a != b)
   {
       if(a < b)
           a = a+c;
       else
           b = b+d;
   }
   return a;

} </syntaxhighlight> Ans:


43. What is the following function doing? <syntaxhighlight lang="c"> int foo( int a, int b) {

   int c = a-b;
   c = c&(0x80000000);
   return (!c)*a +(!!c)*b;

} </syntaxhighlight> Ans:


44. What is the following function doing? <syntaxhighlight lang="c"> unsigned fun(unsigned a, unsigned b) {

   int i;
   unsigned  j = 0;
   for(i = 0; i < 32; i++)
   {
       j <<= 1;
       j += !!(a & 0x80000000);
       a <<= 1;
       if(j >=b)
       {
           j -= b;
           a++;
       }
   }
   return a;

} </syntaxhighlight> Ans:


45. What is the following function doing? <syntaxhighlight lang="c"> unsigned fun(unsigned int a) {

   unsigned int i, x = 0, y = 0, z = 0;
   for(i = 0; i < 16; i++)
   {
      	y <<= 2;
      	y += !!(a & 0x80000000) << 1;
      	y += !!(a & 0x40000000);
      	a <<= 2;
      	x = x + (x&1);
      	x <<= 1;
      	z <<= 1;
      	if(x + 1 <= y)
      	{
           x++;
           z++;

y-=x;

       }
   }
   return z;

} </syntaxhighlight> Ans:



46. Write the code to dynamically allocate a 2-D array of size m x n.

Ans:



47. Declare a pointer to a function accepting an integer and returning void.

Ans:


48. Write the condition so that the below code outputs <math>\unicode{x201C}</math>Hello World<math>\unicode{x201D}</math>. <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   if(<condition>)
   {

printf("Hello ");

   }
   else
   {

printf("World\n");

   }
   return 0;

} </syntaxhighlight> Ans:


49. Write a one line code to check if a number is a power of 2.

Ans:


50. Write a one line code to invert the last four bits of an integer.

Ans:




blog comments powered by Disqus

<quiz display="simple"> {What is the output of this program? <syntaxhighlight lang="c" >

  1. include<stdio.h>

int main() {

   char *ptr;
   char string[] = "How are you?";
   ptr = string;
   ptr += 4;
   printf("%s",ptr);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) How are you?

+(b) are you?

-(c) are

-(d) No output


{ Which of the following will print the value 2 for the above code? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a[10][20][30] = {0};
   a[5][2][1] = 2;
   return 0;

} </syntaxhighlight> |type="()" /} -(a) printf("%d",*(((a+5)+2)+1));

-(b) printf("%d",***((a+5)+2)+1);

+(c) printf("%d",*(*(*(a+5)+2)+1));

-(d) None of these


{ What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a = 5;
   int b = ++a * a++;
   printf("%d ",b);
   return 0;

} </syntaxhighlight> |type="()" /} -(a)25

-(b) 30

-(c) 36

+(d) Undefined Behavior


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a = 5;
   switch(a)
   {
       default:
       a = 4;
       case 6:
           a--;
       case 5:
           a = a+1;
       case 1:
           a = a-1;
   }
   printf("%d \n",a);
   return 0;

} </syntaxhighlight> |type="()" /} +(a) 5

-(b) 4

-(c) 3

-(d) None of these


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a = 2,b = 5;
   a = a^b;
   b = b^a;
   printf("%d %d",a,b);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 5 2

-(b) 2 5

-(c) 7 7

+(d) 7 2


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

int main() {

   int a[][3] = {1, 2, 3, 4, 5, 6};
   int (*ptr)[3] = a;
   printf("%d %d ", (*ptr)[1], (*ptr)[2]);
   ++ptr;
   printf("%d %d\n", (*ptr)[1], (*ptr)[2]);
   return 0;

} </syntaxhighlight> |type="()" /} +(a) 2 3 5 6

-(b) 2 3 4 5

-(c) 4 5 0 0

-(d) none of the above


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

void f(char**);

int main() {

   char *argv[] = { "ab", "cd", "ef", "gh", "ij", "kl" };
   f(argv);
   return 0;

} void f(char **p) {

   char *t;
   t = (p += sizeof(int))[-1];
   printf("%s\n", t);

} </syntaxhighlight> |type="()" /} -(a) ab

-(b) cd

-(c) ef

+(d) gh


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdarg.h>
  2. include <stdio.h>

int ripple(int n, ...) {

   int i, j, k;
   va_list p;
   k = 0;
   j = 0;
   va_start(p, n);
   for (; j < n; ++j)
   {
       i = va_arg(p, int);
       k += i;
   }
   va_end(p);
   
   return k;

} int main() {

   printf("%d\n", ripple(2, 5, 7));
   return 0;

} </syntaxhighlight> |type="()" /} +(a) 12

-(b) 5

-(c) 7

-(d) 15


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

int counter(int i) {

   static int count = 0;
   count = count + i;
   
   return count;

}

int main() {

   int i, j;
   for (i = 0; i <= 5; i++)
       j = counter(i);
   printf("%d\n", j);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 10

+(b) 15

-(c) 6

-(d) 7


{ What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   const int x = 5;
   const int *ptrx;
   ptrx = &x;
   *ptrx = 10;
   printf("%d\n", x);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 5

-(b) 10

+(c) Compile Error

-(d) Garbage value


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>
  2. define x 4+1

int main() {

   int i;
   i = x*x*x;
   printf("%d",i);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 125

+(b) 13

-(c) 17

-(d) None of above


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   char c=125;
   c=c+10;
   printf("%d",c);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 135

-(b) +INF

+(c) -121

-(d) -8


{ What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int i=10;
   static int x=i;
   if(x==i)
       printf("Equal");
   else if(x>i)
       printf("Greater");
   else
       printf("Lesser");
   return 0;

} </syntaxhighlight> |type="()" /} -(a) Equal

-(b) Greater

-(c) Lesser

+(d) Compile Error


{Consider the following code segment: <syntaxhighlight lang="c">

  1. include <stdlib.h>

int *f1() {

   int x = 10;
   return &x;

} int *f2() {

   int *ptr;
   *ptr = 10;
   return ptr;

} int *f3() {

   int *ptr;
   ptr = (int*) malloc(sizeof (*ptr));
   return ptr;

} </syntaxhighlight> Which of these functions uses pointers incorrectly? |type="()" /} +(a) f3 only

-(b) f1 and f3

-(c) f1 and f2

-(d) f1, f2, and f3


{ What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

int main() {

   int i = 3;
   int j;
   j = sizeof(++i + ++i);
   printf("i=%d j=%d\n", i, j);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) i=4 j=4

+(b) i=3 j=4

-(c) i=5 j=4

-(d) the behavior is undefined


{ What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

void f1(int*, int); void f2(int*, int); void (*p[2])(int*, int);

int main() {

   int a = 3;
   int b = 5;
   p[0] = f1;
   p[1] = f2;
   p[0](&a, b);
   printf("%d %d ", a, b);
   p[1](&a, b);
   printf("%d %d\n", a, b);
   return 0;

}

void f1(int *p, int q) {

   int tmp = *p;
   *p = q;
   q = tmp;

} void f2(int *p, int q) {

   int tmp = *p;
   *p = q;
   q = tmp;

} </syntaxhighlight> |type="()" /} +(a) 5 5 5 5

-(b) 3 5 3 5

-(c) 5 3 3 5

-(d) none of the above


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

void e(int);

int main() {

   int a = 3; 
   e(a);
   putchar('\n');
   return 0;

} void e(int n) {

   if (n > 0)
   {
       e(--n);
       printf("%d ", n);
       e(--n);
   }

} </syntaxhighlight> |type="()" /} +(a)0 1 2 0

-(b) 0 1 2 1

-(c) 1 2 0 1

-(d) 0 2 1 1


{ Consider the following code segment: <syntaxhighlight lang="c"> typedef int (*test)(float*, float*); test tmp; </syntaxhighlight> What is the type of tmp? |type="()"

/} -(a) function taking two pointer-to-float arguments and returning pointer to int

-(b) pointer to int

+(c) pointer to function taking two pointer-to-float arguments and returning int

-(d) none of the above


{ What is the output of the following program?' <syntaxhighlight lang="c">

  1. include <stdio.h>

int main() {

   char p;
   char buf[10] = {1, 2, 3, 4, 5, 6, 9, 8};
   p = (buf + 1)[5];
   printf("%d\n", p);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 5

-(b) 6

+(c) 9

-(d) none of the above


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

int main() {

   struct node
   {
       int a;
       int b;
       int c;
   };
   struct node s = { 3, 5, 6 };
   struct node *pt = &s;
   printf("%d\n", *((int*)pt+1));
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 3

+(b) 5

-(c) 6

-(d) 7


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

int main(void) {

   char a[5] = { 1, 2, 3, 4, 5 };
   char *ptr = (char*)(&a + 1);
   printf("%d %d\n", *(a + 1), *(ptr - 1));
   return 0;

} </syntaxhighlight> |type="()" /} -(a) Compile Error

-(b) 2 1

+(c) 2 5

-(d) none of the above


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>

void foo(int[][3]);

int main(void) {

   int a[3][3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };
   foo(a);
   printf("%d\n", a[2][1]);
   return 0;

}

void foo(int b[][3]) {

   ++b;
   b[1][1] = 9;

} </syntaxhighlight> |type="()" /} -(a) 8

+(b) 9

-(c) 7

-(d) none of the above


{Consider the following function: <syntaxhighlight lang="c"> int foo(int x, int n) {

   int val = 1;
   if (n > 0)
   {
       if (n % 2 == 1)
       val *= x;
       val *= foo(x * x, n / 2);
   }
   return val;

} </syntaxhighlight>

What function of x and n is computed by foo? |type="()" /} +(a) $x^n$

-(b) $x×n$

-(c) $n^x$

-(d) none of the above

{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a = 0;
   switch(a)
   {
       default:
           a = 4;
       case 6:
           a--;
       case 5:
           a = a+1;
       case 1:
           a = a-1;
   }
   printf("%d \n",a);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) 5

-(b) 4

+(c) 3

-(d) 0


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a = 2;
   if(a == (1,2))
       printf("Hello");
   if(a == 1,2)
       printf("World");
   return 0;

} </syntaxhighlight> |type="()" /} -(a) Hello

-(b) World

+(c) HelloWorld

-(d) Compile Error


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a = 1,2;
   int b = (1,2);
   if(a == b)
       printf("Equal");
   else
       printf("Not Equal");
   return 0;

} </syntaxhighlight> |type="()" /} -(a) Equal

-(b) Not Equal

-(c) Compiler Dependent

+(d) Compile Error


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

void foo(char *);

int main() {

   char *string = "Hello";
   foo(string);
   printf("%s",string);
   return 0;

}

void foo(char *a) {

   while(*a)
   {
       *a += 1;
       a++;
   }

} </syntaxhighlight> |type="()" /} -(a) Hello

-(b) Ifmmp

-(c) Compile Error

+(d) Segmentation fault


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>
  2. include<stdlib.h>

int main() {

   char s[] = "Hello World";
   int i = 0;
   while(*(s++))
       i++;
   printf("%d",i);
   return 0;

} </syntaxhighlight> |type="()" /} -(a) Segmentation Fault

+(b) Compile Error

-(c) 12

-(d) 0


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int a = 10; int main() {

   fun();
   fun();
   return 0;

}

int fun() {

   static int a = 1;
   printf("%d ",a);
   a++;
   return 0;

} </syntaxhighlight> |type="()" /} +(a) 1 2

-(b) 1 1

-(c) 10 11

-(d) 10 10


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include <stdio.h>
  2. define crypt(s,t,u,m,p,e,d) m##s##u##t
  3. define begin crypt(a,n,i,m,a,t,e)

int begin() {

   printf("Hello\n");
   return 0;

} </syntaxhighlight> |type="()" /} +(a) Hello

-(b) Link error

-(c) Segmentation fault

-(d) Compiler error


{Consider the following program: <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a[10][20][30]={0};
   printf("%ld",&a+1 - &a);
   return 0;

} </syntaxhighlight> What is the output of this program? |type="{}" /} { 1 }

</quiz> {Consider the following program: <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a[10][20][30] = {0};
   int *b = a;
   int *c = a+1;
   printf("%ld", c-b);
   return 0;

} </syntaxhighlight> What is the output of this program? (You may ignore compiler warnings) |type="{}" /} { 600 }


33. What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>
  2. include<stdlib.h>

int* fun();

int main() {

   int *a = fun();
   printf("%d",*a);
   return 0;

} int* fun() {

   int *a =(int*) malloc(sizeof(int));
   *a = 10;
   return a;

} </syntaxhighlight> |type="{}" /} { 10 }


34. What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int *a = fun();
   printf("%d",a);
   return 0;

} int fun() {

   int a = 10;
   return a;

} </syntaxhighlight> |type="{}" /} { 10 }


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>
  2. include<string.h>

int main() {

   char string[] = "Hello";
   printf("%zu %zu",sizeof(string),strlen(string));
   return 0;

} </syntaxhighlight> |type="{}" /} { 6 5 }


{ What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   float a = 0.5;
   if(a == 0.5)
       printf("Yes");
   else
       printf("No");
   return 0;

} </syntaxhighlight> |type="{}" /} { Yes }


{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>
  2. include<string.h>

void foo(char *);

int main() {

   char a[100] = {0};
   printf("%lu %lu",sizeof(a),strlen(a));
   return 0;

} </syntaxhighlight> |type="{}" /} { 1 }



{What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   int a;
   printf("%d",scanf("%d",&a));
   return 0;

} </syntaxhighlight> |type="{}" /} { 1 }


{ If the binary equivalent of 5.375 in normalised form is 0100 0000 1010 1100 0000 0000 0000 0000, what will be the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>
  2. include<math.h>

int main() {

   float a=5.375;
   char *p;
   int i;
   p = (char*)&a;
   for(i=0; i<2; i++)
       printf("%02x ", (unsigned char)(p[i]^p[3-i]));
   return 0;

} </syntaxhighlight> |type="{}" /} { 1 }


{ What is the output of the following program? <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   char str[] = {'a','b','c','\0'};
   str[0] -= 32;
   printf("%s",str);
   return 0;

} </syntaxhighlight> |type="{}" /} { 1 }

Some codes[edit]

1. What is the following function doing? <syntaxhighlight lang="c"> int foo(int n) {

   int sum = 0;
   while(n > 0)
   {
       n = n & n-1;
       sum++;
   }
   return sum;

} </syntaxhighlight> Ans:


2. What is the following function doing? <syntaxhighlight lang="c"> int foo(int a, int b) {

   int c = a, d = b;
   while(a != b)
   {
       if(a < b)
           a = a+c;
       else
           b = b+d;
   }
   return a;

} </syntaxhighlight> Ans:


43. What is the following function doing? <syntaxhighlight lang="c"> int foo( int a, int b) {

   int c = a-b;
   c = c&(0x80000000);
   return (!c)*a +(!!c)*b;

} </syntaxhighlight> Ans:


44. What is the following function doing? <syntaxhighlight lang="c"> unsigned fun(unsigned a, unsigned b) {

   int i;
   unsigned  j = 0;
   for(i = 0; i < 32; i++)
   {
       j <<= 1;
       j += !!(a & 0x80000000);
       a <<= 1;
       if(j >=b)
       {
           j -= b;
           a++;
       }
   }
   return a;

} </syntaxhighlight> Ans:


45. What is the following function doing? <syntaxhighlight lang="c"> unsigned fun(unsigned int a) {

   unsigned int i, x = 0, y = 0, z = 0;
   for(i = 0; i < 16; i++)
   {
      	y <<= 2;
      	y += !!(a & 0x80000000) << 1;
      	y += !!(a & 0x40000000);
      	a <<= 2;
      	x = x + (x&1);
      	x <<= 1;
      	z <<= 1;
      	if(x + 1 <= y)
      	{
           x++;
           z++;

y-=x;

       }
   }
   return z;

} </syntaxhighlight> Ans:



46. Write the code to dynamically allocate a 2-D array of size m x n.

Ans:



47. Declare a pointer to a function accepting an integer and returning void.

Ans:


48. Write the condition so that the below code outputs <math>\unicode{x201C}</math>Hello World<math>\unicode{x201D}</math>. <syntaxhighlight lang="c">

  1. include<stdio.h>

int main() {

   if(<condition>)
   {

printf("Hello ");

   }
   else
   {

printf("World\n");

   }
   return 0;

} </syntaxhighlight> Ans:


49. Write a one line code to check if a number is a power of 2.

Ans:


50. Write a one line code to invert the last four bits of an integer.

Ans:




blog comments powered by Disqus