Título: Funcio Getchar(); Publicado por: Odai en 6 Febrero 2012, 19:23 pm Hola, estoy programando en C con el compilador gcc pero, trato d hacer una repeticion do-while y cuando ingreso el caracter para continuar , el programa me bota...
#include <stdio.h> main() int x, suma, R; char o; printf("Este programa suma los digitos de un numero iterativamente.\n"); do { printf("Ingrese un numero:\n"); scanf("%d", &x); suma=0; while (x>0); { R=x%10; suma=suma+R; x=x/10; } printf("La suma de sus digitos es: %d\n", suma); printf("Deseas seguir ejecutando el programa S/N:"); o=getchar(); getchar(); /*AQUI ES EL PROBLEMA*/ } while(o=='s'||o=='S'); } Título: Re: Funcio Getchar(); Publicado por: Seaworth en 6 Febrero 2012, 19:29 pm ¿Por qué pones 'getchar()' dos veces?
Código: printf("Deseas seguir ejecutando el programa S/N:"); ¿No bastaría con una vez? Título: Re: Funcio Getchar(); Publicado por: dato000 en 6 Febrero 2012, 22:24 pm tenias un ";" después del "while" lo que hace que se quede en un bucle infinito, me sirvio de esta forma:
Código: #include <stdio.h> suerte amigo. Título: Re: Funcio Getchar(); Publicado por: Foxy Rider en 7 Febrero 2012, 05:57 am ¿No bastaría con una vez? http://linux.die.net/man/3/getchar La tecla que tocas es un caracter ( 's' || 'S' ), getchar() bloquea hasta que tipeas un enter ... y el enter es otro caracter, que queda en el buffer ... Saludos. Título: Re: Funcio Getchar(); Publicado por: Seaworth en 7 Febrero 2012, 15:25 pm http://linux.die.net/man/3/getchar La tecla que tocas es un caracter ( 's' || 'S' ), getchar() bloquea hasta que tipeas un enter ... y el enter es otro caracter, que queda en el buffer ... Saludos. Ah, OK (tengo muy olvidado el C...). Gracias, saludos. Título: Re: Funcio Getchar(); Publicado por: Odai en 8 Febrero 2012, 15:57 pm tenias un ";" después del "while" lo que hace que se quede en un bucle infinito, me sirvio de esta forma: Lo que pasa esq el problema esta en el ciclo q no me deja correr si le pongo S, me saca del programa... a por cierrto una aclaracion soy niña NO niño :DCódigo: #include <stdio.h> suerte amigo. |