Gate CS-2012 Question Paper With Solutions

Q. 48 Consider the following C code segment.

int a, b, c = 0;
void prtFun (void);
int 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?
(A)

3 1
4 1
4 2

(B)

4 2
6 1
6 1

(C)

4 2
6 2
2 0

(D)

3 1
5 2
5 2

Answer: (C)

Explanation:

Gate CS-2012 Question Paper With Solutions

Learn More:   Gate CS-2005 Question Paper With Solutions

LEAVE A REPLY

Please enter your comment!
Please enter your name here