The procedure given below is required to find and replace certain characters…

GATE · 2013 · CS · Computer Science & ITBARC · Computer Science · 2013

 The procedure given below is required to find and replace certain characters inside an input character string supplied in array AA. The characters to be replaced are supplied in array oldcoldc, while their respective replacement characters are supplied in array newcnewc. Array AA has a fixed length of five characters, while arrays oldcoldc and newcnewc contain three characters each. However, the procedure is flawed.

void find_and_replace (char *A, char *oldc, char *newc) {
    for (int i = 0; i < 5; i++)
        for (int j = 0; j < 3; j++)
            if (A[i] == oldc[j])
                A[i] = newc[j];
}

The procedure is tested with the following four test cases.

  1. oldc = "abc", newc = "dab"

  2. oldc = "cde", newc = "bcd"

  3. oldc = "bca", newc = "cda"

  4. oldc = "abc", newc = "bac"

If array A is made to hold the string “abcde”“abcde”, which of the above four test cases will be successful in exposing the flaw in this procedure?

  1. A.

    None

  2. B.

    2 only

  3. C.

    3 and 4 only

  4. D.

    4 only

Attempted by 289 students.

Sign up free to check your answer

Sign up free

Explore the full course: Gate Guidance By Sanchit Sir

Loading lesson…