Este sitio web usa cookies de terceros para analizar el tráfico y personalizar los anuncios. Si no está de acuerdo, abandone el sitio y no siga navegando por él. ×


1.7. Datos por el usuario: scanf

(Nota: En la versión 2016 del curso tienes una variante más reciente y más detallada de este apartado)

Si queremos que sea el usuario de nuestro programa quien teclee los valores, necesitamos una nueva orden, llamada “scanf”. Su manejo recuerda al de “printf”, con una pequeña diferencia:

scanf("%d", &primerNumero);

Con ese “%d” indicamos que esperamos leer un número entero (igual que para “printf”) y con &primerNumero decimos que queremos que ese valor leído se guarde en la variable llamada “primerNumero”. La diferencia está en ese símbolo & que nos obliga scanf a poner antes del nombre de la variable. Más adelante veremos qué quiere decir ese símbolo y en qué otros casos se usa.

Un ejemplo de programa que sume dos números tecleados por el usuario sería:

/*-------------------------*/
/*  Ejemplo en C nº 5:     */
/*  c005.c                 */
/*                         */
/*  Leer valores para      */
/*  variables              */
/*                         */
/*  Curso de C,            */
/*    Nacho Cabanes        */
/*-------------------------*/

#include 

int main()    /* Cuerpo del programa */
{
  int primerNumero, segundoNumero, suma;    /* Nuestras variables */

  printf("Introduce el primer numero ");
  scanf("%d", &primerNumero);
  printf("Introduce el segundo numero ");
  scanf("%d", &segundoNumero);
  suma = primerNumero + segundoNumero;
  printf("Su suma es %d", suma);
  
  return 0;
}

Ejercicios propuestos:

  1. Multiplicar dos números tecleados por usuario
  2. El usuario tecleará dos números (x e y), y el programa deberá calcular cual es el resultado de su división y el resto de esa división.
  3. El usuario tecleará dos números (a y b), y el programa mostrar el resultado de la operación (a+b)*(a-b) y el resultado de la operación a2-b2.

 

(Cuando hayas hecho los ejercicios, puedes comprobar tus respuestas con las soluciones propuestas).