Home / C Programming / Variable Number of Arguments :: Find Output of Program

C Programming :: Variable Number of Arguments

  1. Point out the error in the program.

    #include 
    #define MAX 128 
     int main() 
     {   
         char mybuf[] = "Fresher";  
         char yourbuf[] = "GATE";    
         char *const ptr = mybuf;     
         *ptr = 'a';  
         ptr = yourbuf;  
        return 0; 
    } 
    
    

  2. A.

    Error: unknown pointer conversion

    B.

    Error: cannot convert ptr const value

    C.

    No error

    D.

    None of above


  3. What will be the output of the program?

    
    
      #include
      #include
      void fun(char *msg, ...); 
    
      int main() 
      { 
        fun("FresherGATE", 1, 4, 7, 11, 0);     
        return 0; 
     }
     void fun(char *msg, ...)
     {     
         va_list ptr;   
         int num;   
         va_start(ptr, msg);    
         num = va_arg(ptr, int);    
         num = va_arg(ptr, int);     
         printf("%d", num); 
    } 
    

     

  4. A.

    FresherGATE 1 7 11 0

    B.

    1

    C.

    4

    D.

    7


  5. What will be the output of the program?

     #include
     #include 
     void fun1(char, int, int *, float *, char *); 
     void fun2(char ch, ...);
     void (*p1)(char, int, int *, float *, char *); 
     void (*p2)(char ch, ...); 
     
     int main() 
     {   
         char ch='A'; int i=10;   
         float f=3.14; char *p="Hello";     
         p1=fun1;  
         p2=fun2;   
         (*p1)(ch, i, &i, &f, p);  
         (*p2)(ch, i, &i, &f, p);     
         return 0;
     } 
     void fun1(char ch, int i, int *pi, float *pf, char *p)
     {    
        printf("%c %d %d %f %s \n", ch, i, *pi, *pf, p); 
     }
     void fun2(char ch, ...) 
     {    
         int i, *pi; float *pf; char *p;     
         va_list list;  
         printf("%c ", ch);     
         va_start(list, ch); 
         i = va_arg(list, int);     
         printf("%d ", i);    
         
          pi = va_arg(list, int*);     
          printf("%d ", *pi);  
          pf = va_arg(list, float*);     
          printf("%f ", *pf); 
          p = va_arg(list, char *);     
          printf("%s", p);
     }
    

  6. A.

    A 10 3.14
    A 10 3.14

    B.

    A 10 10 3.140000 Hello
    A 10 10 3.140000 Hello

    C.

    A 10 Hello
    A 10 Hello

    D.

    Error


  7. What will be the output of the program?

    
    
      #include
      #include
      void dumplist(int, ...); 
    
      int main()
      {    
          dumplist(2, 4, 8);     
          dumplist(3, 6, 9, 7);  
          return 0;
     }
     void dumplist(int n, ...)
     {     
         va_list p; int i;
         va_start(p, n);   
    
         while(n-->0)   
         {       
             i = va_arg(p, int);         
             printf("%d", i);  
        }    
         va_end(p); 
         printf("\n"); 
     } 
    

  8. A.

    2 4
    3 6

    B.

    2 4 8
    3, 6, 9, 7

    C.

    4 8
    6 9 7

    D.

    1 1 1
    1 1 1 1


  9. What will be the output of the program?

     #include
     #include 
      void display(int num, ...);
    
      int main() 
      {  
          display(4, 'A', 'B', 'C', 'D');     
          return 0;
      } 
      void display(int num, ...) 
      {    
          char c, c1; int j;    
          va_list ptr, ptr1;     
          vastart(ptr, num);     
          va_start(ptr1, num);     
          for(j=1; jint);         
              printf("%c", c);  
              c1 = va_arg(ptr1, int);         
              printf("%d\n", c1);  
         }
     } 
    

  10. A.

    A, A
    B, B
    C, C
    D, D

    B.

    A, a
    B, b
    C, c
    D, d

    C.

    A, 65
    B, 66
    C, 67
    D, 68

    D.

    A, 0
    B, 0
    C, 0
    C, 0


  11. What will be the output of the program?

    
     #include
     #include
      void fun1(int num, ...); 
      void fun2(int num, ...);  
    
      int main() 
      {    
          fun1(1, "Apple", "Boys", "Cats", "Dogs");  
          fun2(2, 12, 13, 14);    
          return 0;
      }
      void fun1(int num, ...)
      { 
          char *str;   
          va_list ptr;    
          va_start(ptr, num);   
          str = va_arg(ptr, char *);     
          printf("%s ", str); 
      }
      void fun2(int num, ...)
      {    
         va_list ptr;   
         va_start(ptr, num);  
         num = va_arg(ptr, int);     
         printf("%d", num); 
     } 
    

  12. A.

    Dogs 12

    B.

    Cats 14

    C.

    Boys 13

    D.

    Apple 12