logo

CuriousTab

CuriousTab

Discussion


Home C Programming Library Functions Comments

  • Question
  • What will be the output of the program?
    #include<stdio.h>
    #include<string.h>
    
    int main()
    {
        char dest[] = {97, 97, 0};
        char src[] = "aaa";
        int i;
        if((i = memcmp(dest, src, 2))==0)
            printf("Got it");
        else
            printf("Missed");
        return 0;
    }
    


  • Options
  • A. Missed
  • B. Got it
  • C. Error in memcmp statement
  • D. None of above

  • Correct Answer
  • Got it 

    Explanation
    memcmp compares the first 2 bytes of the blocks dest and src as unsigned chars. So, the ASCII value of 97 is 'a'.

    if((i = memcmp(dest, src, 2))==0) When comparing the array dest and src as unsigned chars, the first 2 bytes are same in both variables.so memcmp returns '0'.
    Then, the if(0=0) condition is satisfied. Hence the output is "Got it".


    Library Functions problems


    Search Results


    • 1. The macro va_arg is used to extract an argument from the fixed micro argument list and advance the pointer to the next argument.

    • Options
    • A. Yes
    • B. No
    • Discuss
    • 2. Is it necessary that in a function which accepts variable argument list there should be at least be one fixed argument?

    • Options
    • A. Yes
    • B. No
    • Discuss
    • 3. Can the fixed arguments passed to the function that accepts variable argument list, occur at the end?

    • Options
    • A. Yes
    • B. No
    • Discuss
    • 4. Can we write a function that takes a variable argument list and passes the list to another function?

    • Options
    • A. Yes
    • B. No
    • Discuss
    • 5. While defining a variable argument list function we drop the ellipsis(...)?

    • Options
    • A. Yes
    • B. No
    • Discuss
    • 6. What will be the output of the program?
      #include<stdio.h>
      
      int main()
      {
          int i;
          i = scanf("%d %d", &i, &i);
          printf("%d\n", i);
          return 0;
      }
      

    • Options
    • A. 1
    • B. 2
    • C. Garbage value
    • D. Error: cannot assign scanf to variable
    • Discuss
    • 7. What will be the output of the program?
      #include<stdio.h>
      #include<math.h>
      
      int main()
      {
          float i = 2.5;
          printf("%f, %d", floor(i), ceil(i));
          return 0;
      }
      

    • Options
    • A. 2, 3
    • B. 2.000000, 3
    • C. 2.000000, 0
    • D. 2, 0
    • Discuss
    • 8. What will function gcvt() do?

    • Options
    • A. Convert vector to integer value
    • B. Convert floating-point number to a string
    • C. Convert 2D array in to 1D array.
    • D. Covert multi Dimensional array to 1D array
    • Discuss
    • 9. What will be the output of the program?
      #include<stdio.h>
      
      int main()
      {
          int i;
          i = printf("How r u\n");
          i = printf("%d\n", i);
          printf("%d\n", i);
          return 0;
      }
      

    • Options
    • A. How r u
      7
      2
    • B. How r u
      8
      2
    • C. How r u
      1
      1
    • D. Error: cannot assign printf to variable
    • Discuss
    • 10. What will be the output of the program?
      #include<stdio.h>
      
      int main()
      {
          int i;
          char c;
          for(i=1; i<=5; i++)
          {
              scanf("%c", &c); /* given input is 'b' */
              ungetc(c, stdout);
              printf("%c", c);
              ungetc(c, stdin);
          }
          return 0;
      }
      

    • Options
    • A. bbbb
    • B. bbbbb
    • C. b
    • D. Error in ungetc statement.
    • Discuss


    Comments

    There are no comments.

Enter a new Comment