logo

CuriousTab

CuriousTab

Discussion


Home C Programming Functions Comments

  • Question
  • What will be the output of the program?
    #include<stdio.h>
    
    int addmult(int ii, int jj)
    {
        int kk, ll;
        kk = ii + jj;
        ll = ii * jj;
        return (kk, ll);
    }
    
    int main()
    {
        int i=3, j=4, k, l;
        k = addmult(i, j);
        l = addmult(i, j);
        printf("%d, %d\n", k, l);
        return 0;
    }


  • Options
  • A. 12, 12
  • B. 7, 7
  • C. 7, 12
  • D. 12, 7

  • Correct Answer
  • 12, 12 

    Explanation
    Step 1: int i=3, j=4, k, l; The variables i, j, k, l are declared as an integer type and variable i, j are initialized to 3, 4 respectively.

    The function addmult(i, j); accept 2 integer parameters.

    Step 2: k = addmult(i, j); becomes k = addmult(3, 4)

    In the function addmult(). The variable kk, ll are declared as an integer type int kk, ll;

    kk = ii + jj; becomes kk = 3 + 4 Now the kk value is '7'.

    ll = ii * jj; becomes ll = 3 * 4 Now the ll value is '12'.

    return (kk, ll); It returns the value of variable ll only.

    The value 12 is stored in variable 'k'.

    Step 3: l = addmult(i, j); becomes l = addmult(3, 4)

    kk = ii + jj; becomes kk = 3 + 4 Now the kk value is '7'.

    ll = ii * jj; becomes ll = 3 * 4 Now the ll value is '12'.

    return (kk, ll); It returns the value of variable ll only.

    The value 12 is stored in variable 'l'.

    Step 4: printf("%d, %d\n", k, l); It prints the value of k and l

    Hence the output is "12, 12".


    Functions problems


    Search Results


    • 1. If int is 2 bytes wide.What will be the output of the program?
      #include <stdio.h>
      void fun(char**);
      
      int main()
      {
          char *argv[] = {"ab", "cd", "ef", "gh"};
          fun(argv);
          return 0;
      }
      void fun(char **p)
      {
          char *t;
          t = (p+= sizeof(int))[-1];
          printf("%s\n", t);
      }
      

    • Options
    • A. ab
    • B. cd
    • C. ef
    • D. gh
    • Discuss
    • 2. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int i=2;
          printf("%d, %d\n", ++i, ++i);
          return 0;
      }
      

    • Options
    • A. 3, 4
    • B. 4, 3
    • C. 4, 4
    • D. Output may vary from compiler to compiler
    • Discuss
    • 3. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int i=-3, j=2, k=0, m;
          m = ++i && ++j && ++k;
          printf("%d, %d, %d, %d\n", i, j, k, m);
          return 0;
      }
      

    • Options
    • A. -2, 3, 1, 1
    • B. 2, 3, 1, 2
    • C. 1, 2, 3, 1
    • D. 3, 3, 1, 2
    • Discuss
    • 4. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int a=100, b=200, c;
          c = (a == 100 || b > 200);
          printf("c=%d\n", c);
          return 0;
      }
      

    • Options
    • A. c=100
    • B. c=200
    • C. c=1
    • D. c=300
    • Discuss
    • 5. What will be the output of the program?
      #include<stdio.h>
      int main()
      {
          int x=55;
          printf("%d, %d, %d\n", x<=55, x=40, x>=10);
          return 0;
      }
      

    • Options
    • A. 1, 40, 1
    • B. 1, 55, 1
    • C. 1, 55, 0
    • D. 1, 1, 1
    • Discuss
    • 6. What will be the output of the program?
      #include<stdio.h>
      int i;
      int fun1(int);
      int fun2(int);
      
      int main()
      {
          extern int j;
          int i=3;
          fun1(i);
          printf("%d,", i);
          fun2(i);
          printf("%d", i);
          return 0;
      }
      int fun1(int j)
      {
          printf("%d,", ++j);
          return 0;
      }
      int fun2(int i)
      {
          printf("%d,", ++i);
          return 0;
      }
      int j=1;
      

    • Options
    • A. 3, 4, 4, 3
    • B. 4, 3, 4, 3
    • C. 3, 3, 4, 4
    • D. 3, 4, 3, 4
    • Discuss
    • 7. What will be the output of the program?
      #include<stdio.h>
      int sumdig(int);
      int main()
      {
          int a, b;
          a = sumdig(123);
          b = sumdig(123);
          printf("%d, %d\n", a, b);
          return 0;
      }
      int sumdig(int n)
      {
          int s, d;
          if(n!=0)
          {
              d = n%10;
              n = n/10;
              s = d+sumdig(n);
          }
          else
              return 0;
          return s;
      }
      

    • Options
    • A. 4, 4
    • B. 3, 3
    • C. 6, 6
    • D. 12, 12
    • Discuss
    • 8. What will be the output of the program?
      #include<stdio.h>
      
      int addmult(int ii, int jj)
      {
          int kk, ll;
          kk = ii + jj;
          ll = ii * jj;
          return (kk, ll);
      }
      
      int main()
      {
          int i=3, j=4, k, l;
          k = addmult(i, j);
          l = addmult(i, j);
          printf("%d %d\n", k, l);
          return 0;
      }

    • Options
    • A. 12 12
    • B. No error, No output
    • C. Error: Compile error
    • D. None of above
    • Discuss
    • 9. What will be the output of the program?
      #include<stdio.h>
      
      int main()
      {
          void fun(char*);
          char a[100];
          a[0] = 'A'; a[1] = 'B';
          a[2] = 'C'; a[3] = 'D';
          fun(&a[0]);
          return 0;
      }
      void fun(char *a)
      {
          a++;
          printf("%c", *a);
          a++;
          printf("%c", *a);
      }
      

    • Options
    • A. AB
    • B. BC
    • C. CD
    • D. No output
    • Discuss
    • 10. What will be the output of the program?
      #include<stdio.h>
      int fun(int, int);
      typedef int (*pf) (int, int);
      int proc(pf, int, int);
      
      int main()
      {
          printf("%d\n", proc(fun, 6, 6));
          return 0;
      }
      int fun(int a, int b)
      {
         return (a==b);
      }
      int proc(pf p, int a, int b)
      {
         return ((*p)(a, b));
      }
      

    • Options
    • A. 6
    • B. 1
    • C. 0
    • D. -1
    • Discuss


    Comments

    There are no comments.

Enter a new Comment