Tema 5. Entrada y Salida

Documentos relacionados
LENGUAJE. Tema 3 Elementos de un programa II

Ficheros conceptos. Manejo de ficheros en C. Apertura del fichero Función fopen: nombre del fichero. Apertura del fichero Función fopen

Operaciones de E/S en ANSI C

Laboratorio de Arquitectura de Redes. Entrada y salida estándar

Informática Ingeniería en Electrónica y Automática Industrial

Informática PRÀCTICA 9 Curs Práctica Nº 9: Rango y precisión de representación de números en el ordenador.

CAPITULO 4: ENTRADA Y SALIDA DE DATOS.

Fundamentos de Informática 7. Introducción al manejo de archivos

LENGUAJE. Tema 8 Ficheros

Tema 3: Entrada/Salida de Ficheros

Tema 13: Manejo de archivos en lenguaje C

Objetivos. El alumno conocerá y aplicará el concepto de archivo para el almacenamiento y recuperación de datos persistentes.

Tema 6. Gestión de ficheros en C. Programación en Lenguajes Estructurados

Por ejemplo, para declarar un arreglo de enteros llamado a con diez elementos se hace de la siguiente forma:

7. Manejo de Archivos en C.

INICIACIÓN A LA PROGRAMACIÓN EN C

Lenguaje de Programación: C++ ARCHIVOS I/O

TEMA 2. LENGUAJE C. CONCEPTOS BÁSICOS Y PROGRAMACIÓN ELEMENTAL.

Tema 07: Tipos de datos en C & entrada y salida estándar

OPERACIONES SOBRE LENGUAJES REGULARES LA UNIÓN DE LENGUAJES REGULARES

En este artículo vamos a conocer los tipos de datos que podemos manejar programando en C.

TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS

Entrada/Salida. Entrada/Salida. Flujos de texto. Flujos de datos. Flujos binarios. Flujos estándares ANSI

Tipos de Datos en C. Palabras reservadas en C

Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C

Archivos & Cadenas CURSO DE PROGRAMACIÓN EN C. Centro de Investigación y de Estudios Avanzados del IPN. CINVESTAV - Tamaulipas.

DOCUMENTACIÓN PARA EL TRABAJO CON LA PLATAFORMA GUADALBOT

Introducción a la Programación en C Gestión de Ficheros

FILE *nombre_puntero_fichero; fopen(char_nombre_archivo,char_modo_apertura ); MODOS DE APERTURA. Abre un archivo de texto para lectura.

Archivos en lenguaje C

Tipos de Datos. Tipos de Datos Simples Estándar

Algoritmo, Estructuras y Programación I Ing. Marglorie Colina

Programación En Lenguaje C

Lenguaje C. Estructuración de Datos: Arreglos. Funciones de Entrada y de Salida. Segundo Cuatrimestre 2015

El lenguaje C. hace que prog lea el contenido de infile en vez de leer del teclado. Otro ejemplo:

Tipos de variables. Lenguaje C. Departamento de Electrónica. Tipos de datos, variables y constantes. Fundación San Valero

Programación Estructurada

Lenguajes de programación

Entrada y salida de datos. Informática aplicada al medio ambiente curso 2010/2011

Introducción a la Programación

OPERADORES Y EXPRESIONES

Programación. Test Autoevaluación Tema 3

EJERCICIOS. Algo de C CADENAS

MIS. Lizbeth Alejandra Hernández González

Formatos para prácticas de laboratorio

Lenguaje C Entrada y Salida de Datos. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia

FUNCIONES DE ENTRADA Y SALIDA POR CONSOLA

UNAN LEÓN Departamento de Computación. Asignatura: ALGORITMO Y ESTRUCTURA DE DATOS MANEJO DE ARCHIVOS (FICHEROS) EN C

Lenguajes de programación LPSI EUI UPM CADENAS DE CARACTERES

EQUIVALENCIAS EN C DE CONSTRUCCIONES SECUENICIALES EN PSEUDOCÓDIGO

Una expresión es una combinación de uno o más operandos y operadores para obtener un resultado.

Tema 10: Estructuras de control de entrada y salida

Objetivo N 2. Conocer la Estructura General de un Programa en C++ Estructura de Datos Prof. Egilde Márquez

Capítulo 9. Lectura y escritura de ficheros

TEMA 7: Ficheros. TEMA 7: Ficheros Concepto de fichero

Entrada/Salida de Archivos

TEMA 02 TIPOS, OPERADORES Y EXPRESIONES

Tipos de datos y Operadores Básicos

Programcaión Básica. Arreglos y Estructuras de Datos (2)

Informática PRÀCTICA 3 Curs Práctica Nº 3: Tipos de datos simples. Constantes y variables. Operadores aritméticos. Formato de salida.

INTRODUCCIÓN AL LENGUAJE C

Introducción a Lenguaje C. Jornadas de Octubre 2009 Grupo de Usuarios de Linux Universidad Carlos III Tania Pérez

Lenguaje de programación C. Introducción

Introducción a Sistemas Operativos: Ficheros

Vamos a profundizar un poco sobre los distintos tipos de datos que podemos introducir en las celdas de una hoja de cálculo

PROGRAMACION ESTRUCTURADA: Tema 1. El lenguaje de programación C

Elementos de un programa en C

ARCHIVOS. 1. Introducción. 2. Definición de archivo. 3. Archivos de acceso secuencial. 4. Gestión de un archivo secuencial de estructuras

Se guardan en archivos con extencion c y los cabezales con extension h

Computación archivos

INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN C

Lenguaje C Elementos de un Programa. Ing. Hugo Fdo. Velasco Peña Universidad Nacional 2006

Ejercicios de la sesión 4 de C resueltos

Cursosindustriales. Curso de C / C++ Por Deimos_hack

ESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF

1. Lenguajes de programación. 2. Compilador. 3. Mi primer programa. EDM. Introducción al lenguaje C _ 1

Formato para prácticas de laboratorio

Descripción de un Programa

Introducción al lenguaje C

Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.

Entrada y Salida estándar en C++

Curso de Programación Avanzada en C

Autoestudio 2: Variables y Operadores

Cadena de caracteres. 1. Fundamentos de cadenas y caracteres

LABORATORIO #1 INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN C++

LEER Y ESCRIBIR ARCHIVOS DE TEXTO CON PHP. FUNCIONES FOPEN (MODOS), FGETS, FPUTS, FCLOSE Y FEOF. EJEMPLOS (CU00836B)

Entrada/Salida. Entrada y Salida Estándar

Fundamentos de Programación 2017-I

Tema 7 Vectores y cadenas de caracteres. Fundamentos de Informática

PROGRAMACIÓN EN C. Introducción a C. Estructura de un Programa C

Estructuras de datos: vectores en C. Clase 7 y 8 Introducción a la Computación Patricia Borensztejn

Unidad 7: Procesamiento de archivos en el lenguaje C

Uso Pseudocódigo Diagrama de flujo Codificación

Programación en Lenguaje C

Cadenas de caracteres. 1. Definición 2. Funciones para manejo de cadenas

Es un lenguaje estructurado, tiene una abundante cantidad de operadores y tipos de datos.

PROGRAMACION / Clave: 11214

Asignatura: Estructuras de Datos. Año Escolar: Grado y Sección: 6to INF A-B Docente: Ing. Yesika Medina

El operador contenido ( ) permite acceder al contenido de

Transcripción:

Tema 5 Entrada y Salida

Contenidos 1. Conceptos Previos de Entrada y Salida de Datos. 2. Funciones de Salida de Datos. putchar puts printf 3. Funciones de Entrada de Datos. getchar gets scanf 4. Ficheros en Modo Texto. fopen / fclose / feof fputc / fgetc fputs / fgets fprintf / fscanf 2

1. Conceptos Previos de E/S Todo programa de ordenador necesita interactuar con el exterior para obtener los datos que ha de procesar y presentar los resultados obtenidos. La entrada y la salida de datos tiene lugar gracias a los dispositivos correspondientes. Estos dispositivos de E/S son gestionados por el Sistema Operativo. Para que un programa pueda acceder a los dispositivos de E/S, el Sistema Operativo proporciona una serie de funciones. 3

1. Conceptos Previos de E/S (II) Funciones de E/S: transportan datos. Funciones de Entrada Introducen información en el ordenador. Funciones de Salida Extraen información desde el ordenador. No forman parte de la definición del lenguaje C. El lenguaje C va acompañado de una librería (biblioteca) estándar disponible en todos los compiladores, que se encarga de traducir las peticiones de entrada/salida en las correspondientes llamadas a funciones del S.O. Su cabecera se encuentra en stdio.h Utilizando esta librería, el programador de C puede realizar operaciones de E/S de manera independiente del S.O., permitiendo así que los programas sean portables. 4

2. Funciones de Salida de Datos putchar putchar(c); Muestra el carácter c por pantalla en la posición actual del cursor. c es un dato normalmente de tipo int o char, cuyo valor se interpreta como el código ASCII del carácter que se quiere mostrar. En pantalla se muestra el símbolo correspondiente. Ejemplos: putchar('a'); /* El carácter 'a' */ putchar(97); /* También el carácter 'a' */ putchar('\n'); /* Salto de línea */ 5

2. Funciones de Salida de Datos puts puts(cadena); Muestra por pantalla una cadena de caracteres a partir de la posición actual del cursor. cadena debe ser una cadena de caracteres. Tras mostrar la cadena salta a la línea siguiente automáticamente. Ejemplos: char cadena[]="esto es una cadena"; puts(cadena); puts("esto es un ejemplo de puts"); 6

2. Funciones de Salida de Datos printf printf(control, argumentos); Muestra por pantalla datos de diferentes tipos según se especifique. control es una cadena de control que tiene dos clases de elementos: Caracteres normales que se imprimirán por pantalla directamente. Caracteres especiales de formato que definen el modo en que se visualizarán los argumentos. Siempre empiezan con el carácter %. argumentos: Una lista de cero o más elementos separados por comas. Para cada argumento deberá haber una secuencia especificando el formato deseado en control. 7

2. Funciones de Salida de Datos printf (II) %-+0n.mX (Lo mínimo a poner sería %X. Lo demás es opcional) - : Alinear a la izquierda + : Incluir siempre el signo (+ ó -) 0 : Alinear rellenando con ceros en lugar de espacios n : Valor entero que indica el mínimo número de caracteres a mostrar.m : m es un valor entero que indica el número de dígitos decimales a mostrar X : Letra(s) que indica(n) el tipo de dato que se quiere mostrar 8

2. Funciones de Salida de Datos printf (III) Control Tipo de dato %c Carácter %s Cadena de caracteres %d Número entero %u Entero sin signo %ld %lu Entero largo (long) Entero largo sin signo %f Número real en notación de punto fijo %e Número real en notación científica %g Real en notación de punto fijo o científica, según convenga 9

2. Funciones de Salida de Datos printf (IV) printf printf("%6d", 34); printf("%06d", 34); printf("%5.2f", 3.4); printf("%5.2f", 3.456); printf("%-10s", "hola"); printf("%-5.2f", 3.452); printf("%d", 336); printf("%2d", 336); printf("%10d", 336); printf("%-10d", 336); printf("%f", 1234.56); printf("%e", 1234.56); printf("%4.2f", 1234.56); printf("%3.1f", 1234.56); printf("%10.3f", 1234.56); printf("%.3e", 1234.56); Salida 10

3. Funciones de Entrada de Datos getchar c = getchar(); Lee un carácter desde el teclado y devuelve su código ASCII, que puede almacenarse en una variable. Ejemplo: char c; c = getchar(); 11

3. Funciones de Entrada de Datos gets gets(cadena); Lee una cadena de caracteres introducida desde el teclado por el usuario y la almacena en la variable cadena. Se almacenan caracteres hasta que se encuentra un salto de línea ('\n') (por ejemplo porque se ha pulsado la tecla intro.), que NO se almacena. Se utiliza mucho para leer cadenas con espacios. Ejemplo: char cadena[20]; gets(cadena); 12

3. Funciones de Entrada de Datos scanf scanf(control, variables); Lee datos por teclado del tipo indicado. Similar a printf, pero en sentido inverso. En control solamente deben aparecer caracteres de control. Las variables han de ir precedidas por el símbolo & (excepto las cadenas de caracteres), que es la forma de indicar en C que van a ser modificadas. El formato de la cadena de control es: %X No se indican datos de precisión, alineación... Toma como delimitador los espacios en blanco y saltos de línea. No se puede usar para leer cadenas que contengan espacios. 13

3. Funciones de Entrada de Datos scanf (II) Control \n%c char Tipo de dato %s Cadena de caracteres %d int %u unsigned int %hd short int %hu unsigned short int %ld long int %lu unsigned long int %f float %lf double 14

4. Ficheros en Modo Texto fopen / fclose / feof F = fopen(nombre, modo); Abre el fichero nombre en el modo especificado: lectura ("r"), escritura ("w") o añadir ("a"). Para abrir un fichero en modo lectura es imprescindible que exista. Si no existe o se produce algún error, se devuelve NULL. Cuando se abre un fichero en modo escritura ("w") se borra el contenido en caso de que ya existiese Cuidado! Ejemplo: FILE *F; /* FILE* es el tipo para ficheros */ F = fopen("notas.txt", "r"); fclose(f); Cierra el fichero que se abrió en F. fin_de_fichero = feof(f); Devuelve verdadero (un valor distinto de cero) si se ha llegado al final del fichero abierto en F y falso (cero) en caso contrario. Para que devuelva cierto, una operación de E/S anterior debe haber alcanzado el final del fichero. 15

4. Ficheros en Modo Texto fputc / fgetc fputc(c, F); Escribe en el fichero abierto en F el carácter c. Salvo por trabajar con ficheros es idéntico a putchar. ( putchar(c) es equivalente a fputc(c, stdout) ) c = fgetc(f); Lee un carácter del fichero abierto en F. En caso de que se produzca un error o se haya llegado al final del fichero, se devuelve EOF (End Of File). Ojo!EOF es una constante de tipo entero que no cabe bien en una variable de tipo char. Si se va a usar c para luego comparar con EOF, usar tipo int. Salvo por trabajar con ficheros es idéntico a getchar. ( getchar() es equivalente a fgetc(stdin) ) 16

4. Ficheros en Modo Texto fputs / fgets fputs(cadena, F); Escribe en el fichero abierto en F la cadena cadena. Es como puts, pero escribiendo a un fichero y sin añadir el salto de línea que puts pone al final. fgets(cadena, tam, F); Lee del fichero abierto en F una cadena de caracteres que guarda en la variable cadena. Se van leyendo caracteres hasta que se da una de estas circunstancias: Se lee un salto de línea (el carácter '\n'), que se almacena en cadena. Se alcanza el fin de fichero (el EOF). (En este caso no se guarda el '\n') Si no se ha leído ningún carácter, fgets devuelve NULL. Se han leído tam-1 caracteres, de forma que tras añadir el carácter fin de cadena nunca se supera tam. (En este caso no se guarda el '\n') Es como gets; pero lee de fichero, indica el tamaño de la variable y sí que guarda el '\n' en cadena. 17

4. Ficheros en Modo Texto fprintf / fscanf fprintf(f, control, argumentos); Escribe en el fichero abierto en F los datos especificados. Salvo por trabajar con ficheros es idéntico a printf. ( printf(c,a) es equivalente a fprintf(stdout,c,a) ) fscanf(f, control, variables); Lee del fichero abierto en F los datos especificados. Devuelve el número de variables leídas correctamente o EOF si se ha llegado al final de fichero sin leer ninguna de ellas. Salvo por trabajar con ficheros es idéntico a scanf. ( scanf(c,v) es equivalente a fscanf(stdin,c,v) ) 18