1) Realizar un programa que reciba como argumentos del main una palabra y al comenzar solicite al usuario el ingreso de una frase. El programa debe reemplazar todas las veces que aparece la palabra ingresada y reemplazar cada letra por un asterisco *.
Ejemplo: llamo al programa de la siguiente manera:
./prog dia
y al ingresar la frase ingresamos lo siguiente:
"el dia esta muy oscuro. Cada dia llueve mas."
El programa finalmente debería imprimir:
"el *** esta muy oscuro. Cada *** llueve mas."
2) Realizar una función que reciba strings, llamadas frase y palabra. Además debe recibir dos enteros, pos y L. La función debe insertar el string palabra en el string frase, en la posición indicada por el parámetro pos, reemplazando el caracter de la posición pos por toda la cadena, y corriendo el resto de la frase hacia la derecha. Debe escribir el string frase, y devolver el largo final de éste. Por ejemplo, si la frase que recibe la función es la siguiente:
"no hay opciones"
y la palabra que recibe es “ malas ”, con la posición 6, el string frase me quedaría así al salir de la función:
"no hay malas opciones" y devuelve el entero 21 que es el largo final del string modificado.
El prototipo de la función es el siguiente:
int InsertarPalabra(char *frase, char *palabra, int pos, int L);
La función además debe chequear los siguientes errores:
El entero L es el largo máximo del string frase. Si la frase modificada fuera a superar este largo, la función no hace nada y devuelve -1.
Si la posición a insertar el texto es mayor al largo del string frase, la función no hace nada y devuelve -2.Realizar un programa que permita probar esta función y sus casos de error.
3) Hacer un programa que pida al usuario que ingrese un texto, y reemplace cada vez que aparezca el signo '?' por el nombre de usuario, extraído de envp. Modificar luego para que el símbolo a reemplazar sea ingresado por el usuario como argumento del main.