scanf()
El programa puede desplegar un mensaje en la pantalla para el usuario mediante la instrucción printf((), cuyo formato es (como ya vimos, en parte):
printf(‘mensaje”);
Donde valores es un mensaje literal que puede incluir secuencias de escape para incluir valores no fijos o acciones, como ilustran los siguientes ejemplos:
printf(“Hola.”
printf(“%d”, 5);
printf(“%d”, sum);
printf(“La suma es: %d\n\n“, sum);
Para incluir en el mensaje la indicación de que inserte un valor no fijo (o fijo expresado fuera del mensaje) se usa la secuencia “%x”, donde x es una d o una i para los int, una f para los float y los double, y una c para los char. Ya se explicó que la secuencia ‘\n’ indica un salto de línea.
El programa puede pedir valores al usuario desde el teclado mediante la instrucción scanf(), cuyo formato es:
scanf(“formatos”, &var1, &var2, …);
Donde formatos indica una secuencias del tipo ‘%x’ para cada variable a leer, y la lista de variables, separadas por comas y precedidas por el símbolo & son las variables a leer, en ese mismo orden, como ilustran los siguientes ejemplos:
scanf(“%d”, num); // lee en int num
scanf(“%f %c”, &a, &b); // lee el flota f y el caracter c
Dado el siguiente enunciado:
Calcular el área de un triángulo dadas las longitudes de la base y de la altura.
Podemos proponer el siguiente programa:
// areaTriangulo.c, calcula area de un triangulo dadas la base y la altura
#include <stdio.h>
#include <stdlib.h>
int main() {
float b, h, area; // base, altura, área
printf(“Calcula el area de un triangulo, dadas la base y la altura.\n\n”);
printf(“Entre la base y la altura, separadas por espacio, y pulse ENTER: “);
scanf(‘%f %f”, &b, &h);
area = (b * h)/ 2;
printf(“Area: %f\n\n”, area);
system(“pause’);
return 0;
}
Nótese que se ha insertado el comentario que describe el propósito del algoritmo en la primera línea y un comentario para explicar el uso que tienen las tres variables a usar, las cuales se declararon en una sola instrucción Declarar y antes de leer pedir sus valores al usuario (leerlas).
Nótese que se asigna a la variable area el valor de la expresión que toma los valores de las variables b y h para calcular el valor del área del triángulo. Es notable que este algoritmo vale para valores arbitrarios de las variables b y h.
Se usaron dos operadores aritméticos para construir la expresión aritmética en la asignación (parte de los paréntesis para aclarar), a saber, * (multiplicación) y / (división). Los otros operadores aritméticos son + (suma), - (menos) y % (módulo o residuo de la división de enteros).
ecabrera.marzo.2008