#include <stdio.h> #include <stdlib.h> #include "header.h" /*Ingrese un texto de hasta 255 caracteres terminados por el signo $.Imprima el texto modificando la letra a por la letra x. Imprima el texto modificado y luego el texto original.*/ void ejercicio_1( void){ int contador = 0; char charac; char cad[ DIMENSION ], cad_modif[ DIMENSION ] ; printf("ingrese un texto de hasta 255 caracteres incluyendo $ para terminar: "); gets(cad); charac = cad [ contador ]; // leo la primer letra fuera del bucle while ( (contador < DIMENSION ) && ( charac != '$' ) ){ if ( charac == 'a'){ cad_modif[contador] = 'x'; }else{ cad_modif[contador] = charac; } contador++; charac; = cad[ contador ] } puts(cad_modif); puts(cad); } _____________________________________________________________________ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> #include "header.h" #define TRUE 1 #define FALSE 0 /*Ingrese un texto e imprímalo con las vocales en mayusculas*/ /*recibe una letra y devuelve 1 si es vocal, de lo contrario devuelve 0*/ int es_vocal_min( char letra){ char vocales [] = {'a','e','i','o','u'}; for ( int i = 0; i < 5 ; i++ ){ if ( vocales[i] == letra ) return TRUE; // si encuentra vocal minuscula devuelve true } return FALSE; } void ejerc_2( void){ int posic = 0; char cadena[ DIMENSION ]; puts("Ingrese un texto de hasta 255 caracteres "); gets(cadena); while ( posic < strlen( cadena ) ){ if ( es_vocal_min( cadena[posic] ) ) { cadena[posic] = toupper(cadena[posic]) ; //se que es vocal y es min, paso a mayus y lo guardo en la misma posic } posic++; } puts(cadena); //imprimo la cadena } _________________________________________________________ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> #include "header.h" #define TRUE 1 #define FALSE 0 /*Ingrese un texto e imprímalo con la primer letra de cada palabra en mayúscula*/ void ejerc_3 (void){ int largo, posic=0; char texto[DIMENSION]; int es_primera; puts("Ingrese un texto:(hasta 255 caracteres) "); gets(texto); largo = strlen(texto); while (posic < largo ){ es_primera = FALSE; // al comenzar se asume que no es la primera letra de una palabra if (texto[ posic ] != ' ') { if ( posic == 0) es_primera = TRUE; else if ( texto[ posic-1 ] == ' ' ) es_primera = TRUE; } if ( es_primera) texto[ posic ] = toupper( texto[ posic ] ); posic++; } puts(texto); } ___________________________________________________ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> #include "header.h" #define DIM 5 /*Ingrese un texto de hasta 5 caracteres e imprima en forma de espejo.*/ void ejerc_4( void){ char palabra[DIM] , espejo[DIM+1]; int posic = 0, largo; puts( "Ingrese una palabra de hasta 5 caracteres:"); gets(palabra); largo = strlen(palabra) ; while ( posic < largo) { printf("\n iteracion numero %i", posic); espejo[ largo - posic - 1 ] = palabra [posic] ; printf("\n el caracter guardado es %c en posicion %i \n",palabra [posic], largo - posic - 1 ); posic++; } espejo[posic]='\0'; puts(palabra); puts(espejo); } _______________________________________________________________________ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> #include "header.h" #define TRUE 1 #define FALSE 0 /*5. Ingrese un palabra de hasta 5 caracteres e indique si es palindromo */ void ejerc_5 ( void) { char palabra[5]; int es_palindromo = TRUE, largo, posic = 0; puts( "Ingrese una palabra de hasta 5 caracteres:" ); gets( palabra ); largo = strlen(palabra); while ( ( posic < largo/2 ) && (es_palindromo) ) { if ( palabra[ posic ] != palabra[ largo - posic - 1] ) es_palindromo = FALSE; posic++; } if( es_palindromo) puts( "es palindromo!!!111"); } __________________________________________________________ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> #include "header.h" #define TRUE 1 #define FALSE 0 /* devuelve true si la letra del argumento es una vocal, de lo contrario devuelve false */ int es_vocal( char letra){ char vocales[] = {'a','e', 'i', 'o' , 'u'} ; for (int i = 0 ; i< 5 ; i++){ if ( tolower( letra ) == vocales[i]) return TRUE; } return FALSE; } /*Ingrese un texto e imprima la cantidad de letras consonantes y de vocales utilizadas.*/ void ejerc_6( void){ char texto[DIMENSION]; int vocales = 0, consonantes = 0,posic = 0; puts( "Ingrese un texto: (hasta 255 caracteres )" ); gets( texto ); while ( posic < strlen(texto) ){ if ( texto[ posic ] != ' ') { if ( es_vocal( texto[posic] )) vocales++; else consonantes++; } posic++; } printf ("\n hay %i consonantes y %i vocales", consonantes, vocales); } _____________________________________________________________ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> #include "header.h" /*Ingrese un texto e imprima la cantidad de palabras.*/ void ejerc_7( void) { char texto [DIMENSION]; int cant_palabras = 0 , posic = 0, largo ; puts( "Ingrese un texto:"); gets (texto); largo = strlen( texto ); while (posic < largo ){ //hago una comparacion menos pues con el ult char no puedo ver que hay a la der de el if (texto[ posic ] != ' ') { if ( posic == 0) cant_palabras++; else if ( ( texto[ posic-1 ] == ' ' ) && ( texto[ posic+1 ] != ' ') )cant_palabras++; else if (( texto[ posic-1 ] == ' ') && ( texto[ posic+1 ] == ' ')) cant_palabras++; } posic++; } printf (" La cantidad de palabras son %i ", cant_palabras); } _________________________________________________________ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> #include "header.h" #define TRUE 1 #define FALSE 0 /*Ingrese un texto y encríptelo sumando a cada letras 5. (recuerde que trabajamos con los valores de la tabla ascii en hexa)*/ void ejerc_8(void){ char texto[DIMENSION]; int charac_cifrado; puts("ingrese un texto:"); gets (texto); for (int i = 0 ; i< strlen(texto) ; i++) { charac_cifrado = texto[i] + 5; if (charac_cifrado > 255) charac_cifrado -= DIMENSION; texto[i] = charac_cifrado; } puts (texto); }