[C con Clase] X-files en c++
P431i7o
pablito.federico en gmail.com
Mar Oct 14 04:06:54 CEST 2008
no seria mas conveniente usar readchar(); ?
El 13 de octubre de 2008 21:20, bameda <bameda en gmail.com> escribió:
> Hola listeros,
>
> tratando de enseñar C++ me ha pasado un caso muy extraño:
>
>
> ///codigo:
> include <stdio.h>
>
>
> int main(){
> // Para controlar las iteraciones.
> int i;
> // Para contar el numero de vocales.
> int vocales = 0;
> // Para guardar los caracteres que se leen por teclado.
> char caracter;
>
> // Repetir 10 veces (desde que i = 0, mientras i < 10)
> for (i = 0; i < 10; i++){
> // Imprimir
> printf("Introduzca el caracter %i:\t", i + 1);
> // Leemos un caracter
> scanf("%c", &caracter);
>
> // si el caracter leido es a,e,i,o,u,A,E,I,O,U
> if (caracter == 'a' || caracter == 'A' || caracter == 'e' ||
> caracter == 'E' || caracter == 'i' || caracter == 'I' || caracter ==
> 'o' || caracter == 'O' || caracter == 'u' || caracter == 'U'){
> // Aumentamos en 1 el numero de vocales
> vocales++;
> } // fin if
>
> } // fin for
>
> // Imprimimos numero de vocales
> printf("- Numero de Vocales: %i\n", vocales);
> // Imprimimos numero de no vocales (10 - vocales)
> printf("- Numero de Otros caracteres: %i\n", 10 - vocales);
>
> } // fin main
>
> Este código da error:
> $ ./prueba
> Introduzca el caracter 1: a
> Introduzca el caracter 2: Introduzca el caracter 3: e
> Introduzca el caracter 4: Introduzca el caracter 5: i
> Introduzca el caracter 6: Introduzca el caracter 7: o
> Introduzca el caracter 8: Introduzca el caracter 9: u
> Introduzca el caracter 10: - Numero de Vocales: 5
> - Numero de Otros caracteres: 5
>
>
>
> en cambio
>
> ///codigo
> #include <stdio.h>
>
>
> int main(){
> // Para controlar las iteraciones.
> int i;
> // Para contar el numero de vocales.
> int vocales = 0;
> // Para guardar los caracteres que se leen por teclado.
> char caracter;
>
> // Repetir 10 veces (desde que i = 0, mientras i < 10)
> for (i = 0; i < 10; i++){
> // Imprimir
> printf("Introduzca el caracter %i:\t", i + 1);
> // Leemos un caracter
> scanf("%c", &caracter);
>
> // si el caracter leido es a,e,i,o,u,A,E,I,O,U
> if (caracter == 'a' || caracter == 'A' || caracter == 'e' ||
> caracter == 'E' || caracter == 'i' || caracter == 'I' || caracter ==
> 'o' || caracter == 'O' || caracter == 'u' || caracter == 'U'){
> // Aumentamos en 1 el numero de vocales
> vocales++;
> } // fin if
> scanf("%c", &caracter); //Leemos el ENTER
> } // fin for
>
> // Imprimimos numero de vocales
> printf("- Numero de Vocales: %i\n", vocales);
> // Imprimimos numero de no vocales (10 - vocales)
> printf("- Numero de Otros caracteres: %i\n", 10 - vocales);
>
> } // fin main
>
> este no:
> $ ./prueba
> Introduzca el caracter 1: a
> Introduzca el caracter 2: e
> Introduzca el caracter 3: i
> Introduzca el caracter 4: o
> Introduzca el caracter 5: u
> Introduzca el caracter 6: q
> Introduzca el caracter 7: q
> Introduzca el caracter 8: q
> Introduzca el caracter 9: q
> Introduzca el caracter 10: q
> - Numero de Vocales: 5
> - Numero de Otros caracteres: 5
>
> Alguien sabe como puedo corregir el primer código sin añadir
> "scanf("%c", &caracter); //Leemos el ENTER"???
>
>
> Gracias
> ____________________________________________
> |
> | David Barragán Merino
> | E-mail: bameda en ARROBA@gmail.com
> | Ingeniería Informática
> | Universidad Carlos III Madrid
> |____________________________________________
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>
--
Saludos Cordiales
---------------------------------------------
Pablo F.Ruiz Diaz
Computer's Programer
HTTP://www.ventiladorcito.net
HTTP://www.phparaguay.com
Celphone:595-961-882-130
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20081013/c24df676/attachment.html>
Más información sobre la lista de distribución Cconclase