Programas Es C

Páginas: 67 (16652 palabras) Publicado: 27 de noviembre de 2012
PRÁCTICA 1:


El objetivo de esta práctica es afianzar ciertos conceptos básicos de la programación en lenguaje C:


✓ Bucles y tablas.
✓ Entrada y salida de datos.
✓ Paso de argumentos a un programa.
✓ Manejo de archivos.
✓ Funciones.
✓ Uso de memoria dinámica.

EJERCICIOS

1. Escribir un programa (es decir una función main) que pida por teclado unaserie de números enteros, los almacene en una tabla estática y posteriormente escriba por pantalla todos los números introducidos indicando además cual es el mayor y el menor. Lo primero que debe hacer el programa es preguntar al usuario cuantos números se van a introducir y comprobar que dicha cantidad es menor que la dimensión de la tabla. Para dicha dimensión debe definirse una constante (porejemplo MAX_DIMENSION) a la cual se puede asignar un valor razonable (por ejemplo, 100).

Funciones C a utilizar:


✓ scanf: para leer números introducidos por el teclado.

✓ printf: para imprimir por pantalla.



Ejemplo de ejecución: lo que se vería por pantalla debe ser algo así como Introduce la cantidad de números:
3
Introduce los números:
57
2
Los números introducidos son:
5
7
2
El mayor es el 7.
El menor es el 2.







#include
#include
#include
#define OK 1
#define ERR -10001
#define MAX_DIM 100

int enteros[MAX_DIM]; /* Arreglo para guardar los enteros */
int num_total;

int lectura(void);
int sacarpantalla(int max, int min, int num_total);
intcalcular(int *max, int *min, int total);
int es_digito(char caracter[]);

int main()
{
int menor; /* Numero menor */
int mayor; /* Numero mayor */

if (lectura() == ERR)
{
printf("Error al leer el numero de terminos.\n");
return ERR;
}

if (calcular(&mayor, &menor, num_total) == ERR)
{
printf("Error al intentar calcular elmayor y el menor");
return ERR;
}

if (sacarpantalla(mayor, menor, num_total) == ERR)
{
printf("Error al mostrar por pantalla.\n");
return ERR;
}
return OK;
}

/*********************************************************
* Funcion: int lectura(int *total)
* IN: Toma una variable tipo int.
* OUT: Devuelve OK si se ha leido correctamente, ERR si hayalgun fallo.
* MAKE: Obtiene los numeros que introduce el usuario y los guarda
* en un arreglo de enteros
**********************************************************/
int lectura(void)
{
int continuar = OK;
int n;
char numeros[MAX_DIM];

for (n = 0; n < (int) strlen(numeros); n++)
numeros[n] = '0';

printf("\nCuantos numeros va a introducir? --> ");

do {gets(numeros);
continuar = OK;
if ((num_total = es_digito(numeros)) == ERR)
continuar = ERR;
if (num_total enteros[n])
*min = enteros[n];
if (*max < enteros[n])
*max = enteros[n];
}
return OK;
}

/*********************************************************
* Funcion: int sacarpantalla(int max, int min, int num_total)
** IN: toma el valor maximo,minimo y total deelementos
* OUT: devuelde ERR si no puede y OK si puede
* MAKE: Nada
**********************************************************/
int sacarpantalla(int max, int min, int num_total)
{
int n;
printf("Los numeros introducidos son: ");

for (n = 0; n < num_total; n++)
printf("%d, ", enteros[n]);

printf("\nMinimo: %d", min);
printf("\nMaximo: %d\n", max);
return OK;
}/*********************************************************
* Funcion: int es_digito(char caracter)
** IN: Se le da una serie de caracteres para que se pasen a numero
* OUT: Nos devolvera ERR si se produce un eroor
* MAKE: Comprueba la integridad de los datos
**********************************************************/
int es_digito(char caracter[])
{
int i;
int num = 0;
int...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Programa c#
  • PROGRAMAR EN C
  • C++ Programas De C++
  • Programas en c++
  • programa en c++
  • Programas c#
  • programas en c
  • Programas en c

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS