logo

CuriousTab

CuriousTab

Discussion


Home C Programming Strings See What Others Are Saying!
  • Question
  • What will be the output of the program?
    #include<stdio.h>
    #include<string.h>
    
    int main()
    {
        char str1[5], str2[5];
        int i;
        gets(str1);
        gets(str2);
        i = strcmp(str1, str2);
        printf("%d\n", i);
        return 0;
    }
    


  • Options
  • A. Unpredictable integer value
  • B. 0
  • C. -1
  • D. Error

  • Correct Answer
  • Unpredictable integer value 

    Explanation
    gets() gets collects a string of characters terminated by a new line from the standard input stream stdin.

    The gets(str1) read the input string from user and store in variable str1.

    The gets(str2) read the input string from user and store in variable str2.

    The code i = strcmp(str1, str2); The strcmp not only returns -1, 0 and +1, but also other negative or positive values. So the value of i is "unpredictable integer value".

    printf("%d\n", i); It prints the value of variable i.


    More questions

    • 1. 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
    • 2. Bitwise can be used to generate a random number.

    • Options
    • A. Yes
    • B. No
    • Discuss
    • 3. A function that receives variable number of arguments should use va_arg() to extract the last argument from the variable argument list.

    • Options
    • A. True
    • B. False
    • Discuss
    • 4. Bitwise & can be used to check if more than one bit in a number is on.

    • Options
    • A. True
    • B. False
    • Discuss
    • 5. The preprocessor can trap simple errors like missing declarations, nested comments or mismatch of braces.

    • Options
    • A. True
    • B. False
    • Discuss
    • 6. It is necessary that a header files should have a .h extension?

    • Options
    • A. Yes
    • B. No
    • Discuss
    • 7. Bitwise | can be used to set multiple bits in number.

    • Options
    • A. Yes
    • B. No
    • Discuss
    • 8. Bitwise & can be used to check if a bit in number is set or not.

    • Options
    • A. True
    • B. False
    • Discuss
    • 9. A pointer union CANNOT be created

    • Options
    • A. Yes
    • B. No
    • Discuss
    • 10. What will be the output of the program?
      #include<stdio.h>
      #include<stdlib.h>
      
      int main()
      {
          union test
          {
              int i;
              float f;
              char c;
          };
          union test *t;
          t = (union test *)malloc(sizeof(union test));
          t->f = 10.10f;
          printf("%f", t->f);
          return 0;
      }
      

    • Options
    • A. 10
    • B. Garbage value
    • C. 10.100000
    • D. Error
    • Discuss


    Comments

    There are no comments.

Enter a new Comment