logo

CuriousTab

CuriousTab

Discussion


Home C Programming Expressions Comments

  • Question
  • Assuming, integer is 2 byte, What will be the output of the program?
    #include<stdio.h>
    
    int main()
    {
        printf("%x\n", -2<<2);
        return 0;
    }
    


  • Options
  • A. ffff
  • B. 0  
  • C. fff8
  • D. Error

  • Correct Answer
  • fff8 

    Explanation
    The integer value 2 is represented as 00000000 00000010 in binary system.

    Negative numbers are represented in 2's complement method.

    1's complement of 00000000 00000010 is 11111111 11111101 (Change all 0s to 1 and 1s to 0).

    2's complement of 00000000 00000010 is 11111111 11111110 (Add 1 to 1's complement to obtain the 2's complement value).

    Therefore, in binary we represent -2 as: 11111111 11111110.

    After left shifting it by 2 bits we obtain: 11111111 11111000, and it is equal to "fff8" in hexadecimal system.

  • Expressions problems


    Search Results


    • 1. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          static int a[20];
          int i = 0;
          a[i] = i  ;
          printf("%d, %d, %d\n", a[0], a[1], i);
          return 0;
      }
      

    • Options
    • A. 1, 0, 1
    • B. 1, 1, 1
    • C. 0, 0, 0
    • D. 0, 1, 0
    • Discuss
    • 2. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int i=-3, j=2, k=0, m;
          m = ++i || ++j && ++k;
          printf("%d, %d, %d, %d\n", i, j, k, m);
          return 0;
      }
      

    • Options
    • A. 2, 2, 0, 1
    • B. 1, 2, 1, 0
    • C. -2, 2, 0, 0
    • D. -2, 2, 0, 1
    • Discuss
    • 3. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int k, num=30;
          k = (num>5? (num <=10? 100 : 200): 500);
          printf("%d\n", num);
          return 0;
      }
      

    • Options
    • A. 200
    • B. 30
    • C. 100
    • D. 500
    • Discuss
    • 4. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int i=2;
          int j = i + (1, 2, 3, 4, 5);
          printf("%d\n", j);
          return 0;
      }
      

    • Options
    • A. 4
    • B. 7
    • C. 6
    • D. 5
    • Discuss
    • 5. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int i=-3, j=2, k=0, m;
          m = ++i && ++j || ++k;
          printf("%d, %d, %d, %d\n", i, j, k, m);
          return 0;
      }
      

    • Options
    • A. 1, 2, 0, 1
    • B. -3, 2, 0, 1
    • C. -2, 3, 0, 1
    • D. 2, 3, 1, 1
    • Discuss
    • 6. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int x=4, y, z;
          y = --x;
          z = x--;
          printf("%d, %d, %d\n", x, y, z);
          return 0;
      }
      

    • Options
    • A. 4, 3, 3
    • B. 4, 3, 2
    • C. 3, 3, 2
    • D. 2, 3, 3
    • Discuss
    • 7. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int i=3;
          i = i++;
          printf("%d\n", i);
          return 0;
      }
      

    • Options
    • A. 3
    • B. 4
    • C. 5
    • D. 6
    • Discuss
    • 8. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int x=55;
          printf("%d, %d, %d\n", x<=55, x=40, x>=10);
          return 0;
      }
      

    • Options
    • A. 1, 40, 1
    • B. 1, 55, 1
    • C. 1, 55, 0
    • D. 1, 1, 1
    • Discuss
    • 9. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int a=100, b=200, c;
          c = (a == 100 || b > 200);
          printf("c=%d\n", c);
          return 0;
      }
      

    • Options
    • A. c=100
    • B. c=200
    • C. c=1
    • D. c=300
    • Discuss
    • 10. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int i=-3, j=2, k=0, m;
          m = ++i && ++j && ++k;
          printf("%d, %d, %d, %d\n", i, j, k, m);
          return 0;
      }
      

    • Options
    • A. -2, 3, 1, 1
    • B. 2, 3, 1, 2
    • C. 1, 2, 3, 1
    • D. 3, 3, 1, 2
    • Discuss


    Comments

    There are no comments.

Enter a new Comment