logo

CuriousTab

CuriousTab

Discussion


Home C Programming Strings Comments

  • Question
  • What will be the output of the program?
    #include<stdio.h>
    void swap(char *, char *);
    
    int main()
    {
        char *pstr[2] = {"Hello", "CuriousTab"};
        swap(pstr[0], pstr[1]);
        printf("%s\n%s", pstr[0], pstr[1]);
        return 0;
    }
    void swap(char *t1, char *t2)
    {
        char *t;
        t=t1;
        t1=t2;
        t2=t;
    }
    


  • Options
  • A. CuriousTab
    Hello
  • B. Address of "Hello" and "CuriousTab"
  • C. Hello
    CuriousTab
  • D. Iello
    HndiaCURIOUSTAB

  • Correct Answer
  • Hello
    CuriousTab 

    Explanation
    Step 1: void swap(char *, char *); This prototype tells the compiler that the function swap accept two strings as arguments and it does not return anything.

    Step 2: char *pstr[2] = {"Hello", "CuriousTab"}; The variable pstr is declared as an pointer to the array of strings. It is initialized to

    pstr[0] = "Hello", pstr[1] = "CuriousTab"

    Step 3: swap(pstr[0], pstr[1]); The swap function is called by "call by value". Hence it does not affect the output of the program.

    If the swap function is "called by reference" it will affect the variable pstr.

    Step 4: printf("%s\n%s", pstr[0], pstr[1]); It prints the value of pstr[0] and pstr[1].

    Hence the output of the program is

    Hello
    CuriousTab


    Strings problems


    Search Results


    • 1. What will be the output of the program in Turbo C?
      #include<stdio.h>
      
      int main()
      {
          char str[10] = "India";
          str[6] = "CURIOUSTAB";
          printf("%s\n", str);
          return 0;
      }
      

    • Options
    • A. India CURIOUSTAB
    • B. CURIOUSTAB
    • C. India
    • D. Error
    • Discuss
    • 2. What will be the output of the program?
      #include<stdio.h>
      #include<string.h>
      
      int main()
      {
          printf("%d\n", strlen("123456"));
          return 0;
      }
      

    • Options
    • A. 6
    • B. 12
    • C. 7
    • D. 2
    • Discuss
    • 3. What will be the output of the program?
      #include<stdio.h>
      
      int main()
      {
          int i;
          char a[] = "\0";
          if(printf("%s", a))
              printf("The string is empty\n");
          else
              printf("The string is not empty\n");
          return 0;
      }
      

    • Options
    • A. The string is empty
    • B. The string is not empty
    • C. No output
    • D. 0
    • Discuss
    • 4. What will be the output of the program?
      #include<stdio.h>
      
      int main()
      {
          char str[] = "India\0CURIOUSTAB\0";
          printf("%d\n", sizeof(str));
          return 0;
      }
      

    • Options
    • A. 10
    • B. 6
    • C. 5
    • D. 11
    • Discuss
    • 5. What will be the output of the program?
      #include<stdio.h>
      
      int main()
      {
          char t;
          char *p1 = "India", *p2;
          p2=p1;
          p1 = "CURIOUSTAB";
          printf("%s %s\n", p1, p2);
          return 0;
      }
      

    • Options
    • A. India CURIOUSTAB
    • B. CURIOUSTAB India
    • C. India India
    • D. CURIOUSTAB CURIOUSTAB
    • Discuss
    • 6. What will be the output of the program?
      #include<stdio.h>
      
      int main()
      {
          static char mess[6][30] = {"Don't walk in front of me...", 
                                     "I may not follow;", 
                                     "Don't walk behind me...", 
                                     "Just walk beside me...", 
                                     "And be my friend." };
      
          printf("%c, %c\n", *(mess[2]+9), *(*(mess+2)+9));
          return 0;
      }
      

    • Options
    • A. t, t
    • B. k, k
    • C. n, k
    • D. m, f
    • Discuss
    • 7. What will be the output of the program in 16-bit platform (Turbo C under DOS)?
      #include<stdio.h>
      
      int main()
      {
          printf("%d, %d, %d", sizeof(3.0f), sizeof('3'), sizeof(3.0));
          return 0;
      }
      

    • Options
    • A. 8, 1, 4
    • B. 4, 2, 8
    • C. 4, 2, 4
    • D. 10, 3, 4
    • Discuss
    • 8. If the size of pointer is 32 bits What will be the output of the program?
      #include<stdio.h>
      
      int main()
      {
          char a[] = "Visual C++";
          char *b = "Visual C++";
          printf("%d, %d\n", sizeof(a), sizeof(b));
          printf("%d, %d", sizeof(*a), sizeof(*b));
          return 0;
      }
      

    • Options
    • A. 10, 2
      2, 2
    • B. 10, 4
      1, 2
    • C. 11, 4
      1, 1
    • D. 12, 2
      2, 2
    • Discuss
    • 9. What will be the output of the program?
      #include<stdio.h>
      
      int main()
      {
          char str[7] = "CuriousTab";
          printf("%s\n", str);
          return 0;
      }
      

    • Options
    • A. Error
    • B. CuriousTab
    • C. Cannot predict
    • D. None of above
    • Discuss
    • 10. What will be the content of 'file.c' after executing the following program?
      #include<stdio.h>
      
      int main()
      {
          FILE *fp1, *fp2;
          fp1=fopen("file.c", "w");
          fp2=fopen("file.c", "w");
          fputc('A', fp1);
          fputc('B', fp2);
          fclose(fp1);
          fclose(fp2);
          return 0;
      }
      

    • Options
    • A. B
    • B. A
      B
    • C. B
      B
    • D. Error in opening file 'file1.c'
    • Discuss


    Comments

    There are no comments.

Enter a new Comment