Ejercicios de repaso Segundo Parcial


  1. Escriba una función int strlen( char *s ) que calcule la longitud de un strings usando únicamente un puntero a char (char *p) como variable auxiliar.
  2. Escriba un programa que pida el nombre de un archivo repetidas veces, cuente las veces que aparecen en dicho archivo cada letra del abecedario (sin importar mayuscula o minuscula), y escriba esos valores en otro archivo que se le pasa por línea de comando. Si el archivo de resultados ya existiera, el programa deberá leer primero los valores que contenga e incrementarlos con los resultados de la corrida actual. Como resultado final el programa debe imprimir por pantalla las frecuencias con que aparece cada letra del abecedario, en promedio, ordenadas de mayor a menor.(Puede mostrar el resultado tipo histograma si desea).
  3. Implementar la función double ** Traspone( double ** Mat, int M, int N); Esta función debe devolver una nueva matriz (implementada como un arreglo de punteros) que es la traspuesta de la Matriz Mat. (Respetar prototipos)
  4. Implemente la función double traza ( double ** Mat, int N); que calcule y devuelva la traza de la matriz cuadrada Mat. (Respetar prototipos).
  5. Impelmente estructuras para representar fechas, direcciones y personas y escriba un programa que permita ingresar, buscar, eliminar, y modificar los datos de hasta N personas.
  6. Dada la estructura struct my_array_int{ int size, *p }; implemente funciones para allocar, y liberar una de estas estructuras, para setear valores en el arreglo apuntado por p y obtener valores del mismo (chequeando siempre que los límites del arreglo sean respetados).