En la pregunta anterior, si se hace que la array A contenga la string «abcde», ¿cuál de los cuatro casos de prueba anteriores tendrá éxito al exponer la falla en este procedimiento?
(A) Ninguno
(B) Solo 2
(C) Solo 3 y 4
(D) Solo 4
Respuesta: (C)
Explicación:
#include <stdio.h> #include <string.h> 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]; } int main() { char *oldc1 = "abc", *newc1 = "dab"; char *oldc2 = "cde", *newc2 = "bcd"; char *oldc3 = "bca", *newc3 = "cda"; char *oldc4 = "abc", *newc4 = "bac"; char test[] = "abcde"; printf("Test 2\n"); printf("%s\n", test); find_and_replace(test, oldc2, newc2); printf ("%s\n", test); printf("\nTest 3\n"); strcpy(test, "abcde"); printf("%s\n", test); find_and_replace(test, oldc3, newc3); printf ("%s\n", test); printf("\nTest 4\n"); strcpy(test, "abcde"); printf("%s\n", test); find_and_replace(test, oldc4, newc4); printf ("%s\n", test); }
Producción:
Test 2 abcde abbcd Test 3 abcde addde Test 4 abcde aacde
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA