/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

Error en el capitulo 6

 
      Índice del Foro elrincondelc.com -> Errores/Sugerencias del curso
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
NinyoScript



Registrado: 14 Oct 2005
Mensajes: 2

MensajePublicado: 15/10/2005 7:04 am
Título: Error en el capitulo 6

error en el curso, pagina:6, titulo:"Introducir datos por teclado"

Dice lo siguiente:

~~~~~~~~~~~~~~~~~~~~~~~~~

Ejercicio 1: Busca el error en el siguiente programa:
Código:

#include <stdio.h>

int main() {
    int numero;
   
    printf( "Introduce un número: " );
    scanf( "%d", numero );
    printf( "\nHas introducido el número %d.\n", numero );
    return 0;
}

Solución:

A la variable número le falta el '&' con lo que no estamos indicando al programa la dirección de la variable y no obtendremos el resultado deseado. Haz la prueba y verás que el mensaje "Has introducido el número X" no muestra el número que habías introducido.


~~~~~~~~~~~~~~~~~~~~~~~~~

Falta que en el scanf (y el segundo prinf), esta pidiendo una variable tipo double... así que cuando compilas te sale error porque esta tratando de meter un numero mas grande en una variable tipo int... eso es FEO... Confused
Volver arriba
rir3760



Registrado: 01 Oct 2004
Mensajes: 7516
Ubicación: Mexico

MensajePublicado: 15/10/2005 7:57 am
Título:

El ejemplo y la solucion son correctos, %d tanto en la llamada a scanf como en la segunda llamada a printf indican que la variable que se pasa es de tipo int.

Con printf cuando se pasa un valor o variable de tipo float o double se utilizan los calificadores %e, %f y %g.

Con scanf es un poco mas enredado: %e, %f y %g para objetos de tipo float y %le, %lf y %lg para objetos de tipo double.

Una referencia mas extensa pero en ingles la puedes encontrar a partir de esta pagina.

Un saludo
_________________
C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
Volver arriba
NinyoScript



Registrado: 14 Oct 2005
Mensajes: 2

MensajePublicado: 15/10/2005 11:53 am
Título: :(

Question y porque mi compilador decia que habia un error y que no podia meter ese valor en el int Question

no entiendo Sad
Volver arriba
rir3760



Registrado: 01 Oct 2004
Mensajes: 7516
Ubicación: Mexico

MensajePublicado: 24/10/2005 2:51 am
Título:

El codigo del ejercicio corregido:
Código:
#include <stdio.h>

int main(void)
{
   int numero;
   
   printf("Introduce un número: ");
   scanf("%d", &numero);
   
   printf("Has introducido el número %d.\n", numero);
   
   return 0;
}

Compila sin errores y produce los resultados esperados en los compiladores que tengo a la mano.

¿Que compilador utilizas y cual es exactamente el mensaje de error que te muestra?

Un saludo
_________________
C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
Volver arriba
      Índice del Foro elrincondelc.com -> Errores/Sugerencias del curso
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com