Consider the following C code segment. int a, b, c = 0; void prtFun(void);…

GATE · 2012 · CS · Computer Science & IT

Consider the following C code segment.

int a, b, c = 0;
void prtFun(void);
main()
{   static int a = 1;                  /* Line 1 */
    prtFun();
    a += 1;
    prtFun();
    printf(" \n %d %d ", a, b);
}

void prtFun(void)
{   static int a = 2;                  /* Line 2 */
    int b = 1;
    a += ++b;
    printf(" \n %d %d ", a, b);
}

What output will be generated by the given code segment?

  1. A.

    314142\begin{array}{llll} 3 & & 1 & \\ 4 & & 1 & \\ 4 & & 2 & \end{array}

  2. B.

    426161\begin{array}{lll} 4 & & 2 & \\ 6 & & 1 & \\ 6 & & 1 & \end{array}

  3. C.

    426220\begin{array}{lll} 4 & & 2 & \\ 6 & & 2 & \\ 2 & & 0 & \end{array}

  4. D.

    315252\begin{array}{lll} 3 & & 1 & \\ 5 & & 2 & \\ 5 & & 2 & \end{array}

Attempted by 213 students.

Sign up free to check your answer

Sign up free

Explore the full course: Gate Guidance By Sanchit Sir

Loading lesson…