Home / General Knowledge / Testing New :: Discussion

Discussion :: Testing New

  1. Determine Output:

    void main()

    {

    int c[] = {2.8,3.4,4,6.7,5};

    int j, *p=c, *q=c;

    for(j=0;j<5;j++){

    printf(" %d ", *c);

    ++q;

    }

    for(j=0;j<5;j++){

    printf(" %d ", *p);

    ++p;

    }

    }

  2. A.

     2 3 4 6 5 2 3 4 6 5

    B.

     2.8 3.4 4 6.7 5 2.8 3.4 4 6.7

    C.

     2.8 2.8 2.8 2.8 2.8 2.8 3.4 4

    D.

     2 2 2 2 2 2 3 4 6 5

    View Answer

    Workspace

    Answer : Option D

    Explanation :

    Initially pointer c is assigned to both p and q. In the first loop, since only q is incremented and not c , the value 2 will be printed 5 times. In second loop p itself is incremented. So the values 2 3 4 6 5 will be printed.


Be The First To Comment