logo

CuriousTab

CuriousTab

Discussion


Home C Programming Strings Comments

  • Question
  • What will be the output of the program?
    #include<stdio.h>
    
    int main()
    {
        char str[25] = "CuriousTab";
        printf("%s\n", &str+2);
        return 0;
    }
    


  • Options
  • A. Garbage value
  • B. Error
  • C. No output
  • D. diaCURIOUSTAB

  • Correct Answer
  • Garbage value 

    Explanation
    Step 1: char str[25] = "CuriousTab"; The variable str is declared as an array of characteres and initialized with a string "CuriousTab".

    Step 2: printf("%s\n", &str+2);

    => In the printf statement %s is string format specifier tells the compiler to print the string in the memory of &str+2

    => &str is a location of string "CuriousTab". Therefore &str+2 is another memory location.

    Hence it prints the Garbage value.


    Strings problems


    Search Results


    • 1. What will be the output of the program?
      #include<stdio.h>
      #include<string.h>
      
      int main()
      {
          printf("%c\n", "abcdefgh"[4]);
          return 0;
      }
      

    • Options
    • A. Error
    • B. d
    • C. e
    • D. abcdefgh
    • Discuss
    • 2. What will be the output of the program?
      #include<stdio.h>
      #include<string.h>
      
      int main()
      {
          char sentence[80];
          int i;
          printf("Enter a line of text\n");
          gets(sentence);
          for(i=strlen(sentence)-1; i >=0; i--)
              putchar(sentence[i]);
          return 0;
      }
      

    • Options
    • A. The sentence will get printed in same order as it entered
    • B. The sentence will get printed in reverse order
    • C. Half of the sentence will get printed
    • D. None of above
    • Discuss
    • 3. What will be the output of the program If characters 'a', 'b' and 'c' enter are supplied as input?
      #include<stdio.h>
      
      int main()
      {
          void fun();
          fun();
          printf("\n");
          return 0;
      }
      void fun()
      {
          char c;
          if((c = getchar())!= '\n')
              fun();
          printf("%c", c);
      }
      

    • Options
    • A. abc abc
    • B. bca
    • C. Infinite loop
    • D. cba
    • Discuss
    • 4. What will be the output of the program?
      #include<stdio.h>
      
      int main()
      {
          static char s[25] = "The cocaine man";
          int i=0;
          char ch;
          ch = s[++i];
          printf("%c", ch);
          ch = s[i++];
          printf("%c", ch);
          ch = i++[s];
          printf("%c", ch);
          ch = ++i[s];
          printf("%c", ch);
          return 0;
      }
      

    • Options
    • A. hhe!
    • B. he c
    • C. The c
    • D. Hhec
    • Discuss
    • 5. What will be the output of the program?
      #include<stdio.h>
      
      int main()
      {
          char *names[] = { "Suresh", "Siva", "Sona", "Baiju", "Ritu"};
          int i;
          char *t;
          t = names[3];
          names[3] = names[4];
          names[4] = t;
          for(i=0; i<=4; i++)
              printf("%s,", names[i]);
          return 0;
      }
      

    • Options
    • A. Suresh, Siva, Sona, Baiju, Ritu
    • B. Suresh, Siva, Sona, Ritu, Baiju
    • C. Suresh, Siva, Baiju, Sona, Ritu
    • D. Suresh, Siva, Ritu, Sona, Baiju
    • Discuss
    • 6. What will be the output of the program (Turbo C in 16 bit platform DOS)?
      #include<stdio.h>
      #include<string.h>
      
      int main()
      {
          char *str1 = "India";
          char *str2 = "CURIOUSTAB";
          char *str3;
          str3 = strcat(str1, str2);
          printf("%s %s\n", str3, str1);
          return 0;
      }
      

    • Options
    • A. CuriousTab India
    • B. CuriousTab CuriousTab
    • C. India India
    • D. Error
    • Discuss
    • 7. 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 not empty\n");
          else
              printf("The string is empty\n");
          return 0;
      }
      

    • Options
    • A. The string is not empty
    • B. The string is empty
    • C. No output
    • D. 0
    • Discuss
    • 8. What will be the output of the following program in 16 bit platform assuming that 1022 is memory address of the string "Hello1" (in Turbo C under DOS)?
      #include<stdio.h>
      
      int main()
      {
          printf("%u %s\n", &"Hello1", &"Hello2");
          return 0;
      }
      

    • Options
    • A. 1022 Hello2
    • B. Hello1 1022
    • C. Hello1 Hello2
    • D. 1022 1022
    • E. Error
    • Discuss
    • 9. If the size of pointer is 4 bytes then What will be the output of the program?
      #include<stdio.h>
      
      int main()
      {
          char *str[] = {"Frogs", "Do", "Not", "Die", "They", "Croak!"};
          printf("%d, %d", sizeof(str), strlen(str[0]));
          return 0;
      }
      

    • Options
    • A. 22, 4
    • B. 25, 5
    • C. 24, 5
    • D. 20, 2
    • Discuss
    • 10. What will be the output of the program?
      #include<stdio.h>
      
      int main()
      {
          char str[] = "Nagpur";
          str[0]='K';
          printf("%s, ", str);
          str = "Kanpur";
          printf("%s", str+1);
          return 0;
      }
      

    • Options
    • A. Kagpur, Kanpur
    • B. Nagpur, Kanpur
    • C. Kagpur, anpur
    • D. Error
    • Discuss


    Comments

    There are no comments.

Enter a new Comment