Ejercicios de la sesión 4 de C resueltos
|
|
- Alfredo Julián Ortega Aguirre
- hace 6 años
- Vistas:
Transcripción
1 Ejercicios de la sesión 4 de C resueltos 1. Usando el procedimiento del ejercicio 2 del seminario anterior, escribe un programa que multiplique dos matrices A y B leídas de ficheros, la primera de tamaño n m y la segunda de tamaño m p. Las matrices deben leerse cada una de un fichero distinto y el resultado debe estar en otro fichero. El formato del fichero es el siguiente: en la primera línea habrán 2 enteros, indicando el tamaño de la matriz en cada dimensión. A continuación vienen las filas de la matriz, cada una en una misma línea. Los valores son números reales. El resultado debe estar en otro fichero con el mismo formato. Por ejemplo, un fichero de definición de una matríz podría ser el siguiente: Los nombres de los ficheros serán los argumentos del programa o (si no existen) se solicitarán a través del teclado. Solución: Una posible implementación sería ésta: #include <stdlib.h> #include <limits.h> #include <string.h> * * Crea una matriz de doubles de tamaño N x M, reservando la memoria de * forma dinámica. double *creamatriz(int m, int n) { return calloc(m*n, sizeof (double)); * * Multiplica dos matrices A y B, escribiendo el resultado en una tercera C. * Las matrices a multiplicar deben ser de dimensiones compatibles, en otro * caso se devuelve el valor NULL como resultado. Si todo funciona correctamente, * se devuelve como resultado un puntero a C. Si C, que se pasa como parámetro, * tiene como valor NULL, se reserva espacio para una nueva matriz y se devuelve * el puntero como resultado. * Parametros: * - double *A: puntero a la matriz A * - int m: filas de A * - int n: columnas de A * - double *B: puntero a la matriz B * - int r: filas de B * - int s: columnas de B * - double *C: puntero a la matriz C (puede ser NULL si se quiere crear) * - int *t: puntero a filas de C (para poder escribirlo en caso de crearla) * - int *u: puntero a columnas de C (para poder escribirlo en caso de crearla) 1/13
2 * * Devuelve: NULL en caso de error. Un puntero a la matriz resultante en otro * caso. Si C era NULL, se creará una nueva matriz. En *t y *u se escribiran * las dimensiones de la nueva matriz. double *multiplicamatrices(double *A, int m, int n, double *B, int r, int s, double *C, int *t, int *u) { int i, j, k; if (n!= r) return NULL; //Dimensiones incompatibles if (C && (m>*t s>*u)) return NULL; //Dimensiones del C existente incorrectas if (!C) { // Si C es NULL, creamos la matriz resultado C = creamatriz(m, s); *t = m; *u = s; for (i = 0; i < m; i++) { //Recorremos filas for (j = 0; j < s; j++) { //Recorremos columnas C[i * s + j] = 0; //Inicializamos el valor para la posicion i,j for (k = 0; k < n; k++) { C[i * s + j] += A[i * n + k] * B[k * s + j]; return C; * Lee una matriz del fichero indicado nombrefichero, reservando la memoria * en M e indicando las dimensiones en m y n. Devuelve M=NULL en caso de * error, indicando el codigo de error en n. void leematriz(char *nombrefichero, double **M, int *m, int *n) { FILE *f; f = fopen(nombrefichero, "r"); if (!f) { *M = NULL; *m = 0; *n = 1; // El fichero no se ha podido abrir return; if (fscanf(f, "%d %d\n", m, n)!= 2) { *M = NULL; *m = 0; *n = 2; // Las dimensiones no se han podido leer return; *M = creamatriz(*m, *n); if (!*M) { *M = NULL; *m = 0; 2/13
3 *n = 3; //Imposible reservar la memoria return; int i, j; float v; for (i = 0; i<*m; i++) { for (j = 0; j<*n; j++) { fscanf(f, "%f", &v); (*M)[i * (*n) + j] = v; * Escribe la matriz M con dimensiones m X n en el fichero indicado * nombrefichero. Devuelve 0 en caso de ejecución correcta. int escribematriz(char *nombrefichero, double *M, int m, int n) { FILE *f; int i, j; f = fopen(nombrefichero, "w"); if (!f) { return 1; //No se puede crear el fichero fprintf(f, "%d %d\n", m, n); for (i = 0; i < m; i++) { for (j = 0; j < n; j++) { fprintf(f, "%g ", M[i * n + j]); putc('\n', f); return 0; * Imprime una matriz por la salida estándar void imprimematriz(double *M, int m, int n) { int i, j; for (i = 0; i < m; i++) { for (j = 0; j < n; j++) { printf("%g ", M[i * n + j]); putchar('\n'); Principal int main(int argc, char *argv[]) { double *A, *B, *C = NULL; int am, an, bm, bn, cm, cn; // Dimensiones char *matriza, *matrizb, *matrizc; int sz; if (argc < 2) { 3/13
4 printf("indique el nombre del fichero con la matriz A: "); matriza = malloc(path_max + 1); fgets(matriza, PATH_MAX, stdin); if (!(sz = strlen(matriza))) { return EXIT_SUCCESS; if (matriza[sz - 1] == '\n') matriza[sz - 1] = '\0'; else { matriza = argv[1]; leematriz(matriza, &A, &am, &an); if (!A) { printf(" Imposible leer A de %s, código de error %d!\n", matriza, an); printf("leido A =\n"); imprimematriz(a, am, an); if (argc < 3) { printf("indique el nombre del fichero con la matriz B: "); matrizb = malloc(path_max + 1); fgets(matrizb, PATH_MAX, stdin); if (!(sz = strlen(matrizb))) { return EXIT_SUCCESS; if (matrizb[sz - 1] == '\n') matrizb[sz - 1] = '\0'; else { matrizb = argv[2]; leematriz(matrizb, &B, &bm, &bn); if (!B) { printf(" Imposible leer B de %s, código de error %d!\n", matrizb, bn); printf("leido B =\n"); imprimematriz(b, bm, bn); C = multiplicamatrices(a, am, an, B, bm, bn, C, &cm, &cn); if (!C) { printf(" Imposible multiplicar AxB!\n"); printf("\nc = AxB =\n"); imprimematriz(c, cm, cn); if (argc < 4) { printf("indique el nombre del fichero donde guardar la matriz C: "); matrizc = malloc(path_max + 1); fgets(matrizc, PATH_MAX, stdin); if (!(sz = strlen(matrizc))) { return EXIT_SUCCESS; if (matrizc[sz - 1] == '\n') matrizc[sz - 1] = '\0'; 4/13
5 else { matrizc = argv[3]; if (escribematriz(matrizc, C, cm, cn)) { printf(" Imposible escribir C en %s!\n", matrizc); Liberamos la memoria free(a); free(b); free(c); if (argc < 2) free(matriza); if (argc < 3) free(matrizb); if (argc < 4) free(matrizc); return (EXIT_SUCCESS); 2. Dado el programa escrito en el ejercicio anterior (cálculo del producto de dos matrices) dividir el código en tres módulos: Ficheros (funciones de entrada salida), Matematico (tipo de datos matriz y producto de matrices) y Principal (programa principal). Crea un fichero makefile para generar automáticamente el programa ejecutable. Solución: Una posible implementación sería ésta: * Fichero: matematico.h #ifndef _MATEMATICO_H #define _MATEMATICO_H * * Crea una matriz de doubles de tamaño N x M, reservando la memoria de * forma dinámica. double *creamatriz(int m, int n); * * Multiplica dos matrices A y B, escribiendo el resultado en una tercera C. * Las matrices a multiplicar deben ser de dimensiones compatibles, en otro * caso se devuelve el valor NULL como resultado. Si funciona correctamente, * se devuelve como resultado un puntero a C. Si C tiene como valor NULL, * se reserva espacio para una nueva matriz y se devuelve el puntero. * Parametros: * - double *A: puntero a la matriz A * - int m: filas de A * - int n: columnas de A * - double *B: puntero a la matriz B * - int r: filas de B * - int s: columnas de B 5/13
6 * - double *C: puntero a la matriz C (puede ser NULL si se quiere crear) * - int *t: puntero a filas de C (para poder escribirlo en caso de crearla) * - int *u: puntero a columnas de C (para poder escribirlo) * * Devuelve: NULL en caso de error. Un puntero a la matriz resultante en otro * caso. Si C era NULL, se creará una nueva matriz. En *t y *u se escribiran * las dimensiones de la nueva matriz. double *multiplicamatrices(double *A, int m, int n, double *B, int r, int s, double *C, int *t, int *u); #endif _MATEMATICO_H * Fichero: matematico.c #include "matematico.h" #include <stdlib.h> * * Crea una matriz de doubles de tamaño N x M, reservando la memoria de * forma dinámica. double *creamatriz(int m, int n) { return calloc(m*n, sizeof (double)); * * Multiplica dos matrices A y B, escribiendo el resultado en una tercera C. * Las matrices a multiplicar deben ser de dimensiones compatibles, en otro * caso se devuelve el valor NULL como resultado. Si todo funciona correctamente, * se devuelve como resultado un puntero a C. Si C, que se pasa como parámetro, * tiene como valor NULL, se reserva espacio para una nueva matriz y se devuelve * el puntero como resultado. * Parametros: * - double *A: puntero a la matriz A * - int m: filas de A * - int n: columnas de A * - double *B: puntero a la matriz B * - int r: filas de B * - int s: columnas de B * - double *C: puntero a la matriz C (puede ser NULL si se quiere crear) * - int *t: puntero a filas de C (para poder escribirlo en caso de crearla) * - int *u: puntero a columnas de C (para poder escribirlo en caso de crearla) * * Devuelve: NULL en caso de error. Un puntero a la matriz resultante en otro * caso. Si C era NULL, se creará una nueva matriz. En *t y *u se escribiran * las dimensiones de la nueva matriz. double *multiplicamatrices(double *A, int m, int n, double *B, int r, int s, 6/13
7 double *C, int *t, int *u) { int i, j, k; if (n!= r) return NULL; //Dimensiones incompatibles if (C && (m>*t s>*u)) return NULL; //Dimensiones del C existente incorrectas if (!C) { // Si C es NULL, creamos la matriz resultado C = creamatriz(m, s); *t = m; *u = s; for (i = 0; i < m; i++) { //Recorremos filas for (j = 0; j < s; j++) { //Recorremos columnas C[i * s + j] = 0; //Inicializamos el valor para la posicion i,j for (k = 0; k < n; k++) { C[i * s + j] += A[i * n + k] * B[k * s + j]; return C; * File: ficheros.h #ifndef _FICHEROS_H #define _FICHEROS_H * Lee una matriz del fichero indicado nombrefichero, reservando la memoria * en M e indicando las dimensiones en m y n. Devuelve M=NULL en caso de * error, indicando el código de error en n. void leematriz(char *nombrefichero, double **M, int *m, int *n); * Escribe la matriz M con dimensiones m X n en el fichero indicado * nombrefichero. Devuelve 0 en caso de ejecución correcta. int escribematriz(char *nombrefichero, double *M, int m, int n); #endif _FICHEROS_H * File: ficheros.c #include "ficheros.h" #include <stdio.h> #include "matematico.h" 7/13
8 * Lee una matriz del fichero indicado nombrefichero, reservando la memoria * en M e indicando las dimensiones en m y n. Devuelve M=NULL en caso de * error, indicando el código de error en n. void leematriz(char *nombrefichero, double **M, int *m, int *n) { FILE *f; f = fopen(nombrefichero, "r"); if (!f) { *M = NULL; *n = 1; // El fichero no se ha podido abrir return; if (fscanf(f, "%d %d\n", m, n)!= 2) { *M = NULL; *n = 2; // Las dimensiones no se han podido leer return; *M = creamatriz(*m, *n); if (!*M) { *M = NULL; *n = 3; //Imposible reservar la memoria return; int i, j; float v; for (i = 0; i<*m; i++) { for (j = 0; j<*n; j++) { fscanf(f, "%f", &v); (*M)[i * (*n) + j]=v; * Escribe la matriz M con dimensiones m X n en el fichero indicado * nombrefichero. Devuelve 0 en caso de ejecución correcta. int escribematriz(char *nombrefichero, double *M, int m, int n) { FILE *f; int i, j; f = fopen(nombrefichero, "w"); if (!f) { return 1; //No se puede crear el fichero fprintf(f, "%d %d\n", m, n); for (i = 0; i < m; i++) { for (j = 0; j < n; j++) { fprintf(f, "%g ", M[i * n + j]); putc('\n', f); 8/13
9 return 0; * File: principal.c #include <stdio.h> #include <stdlib.h> #include <limits.h> #include <string.h> #include "matematico.h" #include "ficheros.h" * Imprime una matriz por la salida estándar void imprimematriz(double *M, int m, int n) { int i, j; for (i = 0; i < m; i++) { for (j = 0; j < n; j++) { printf("%g ", M[i * n + j]); putchar('\n'); * Programa de prueba int main(int argc, char *argv[]) { double *A, *B, *C = NULL; int am, an, bm, bn, cm, cn; // Dimensiones char *matriza, *matrizb, *matrizc; int sz; if (argc < 2) { printf("indique el nombre del fichero con la matriz A: "); matriza = malloc(path_max + 1); fgets(matriza, PATH_MAX, stdin); if (!(sz = strlen(matriza))) { return EXIT_SUCCESS; if (matriza[sz - 1] == '\n') matriza[sz - 1] = '\0'; else { matriza = argv[1]; leematriz(matriza, &A, &am, &an); if (!A) { printf(" Imposible leer A de %s, código de error %d!\n", matriza, an); printf("leido A =\n"); imprimematriz(a, am, an); 9/13
10 if (argc < 3) { printf("indique el nombre del fichero con la matriz B: "); matrizb = malloc(path_max + 1); fgets(matrizb, PATH_MAX, stdin); if (!(sz = strlen(matrizb))) { return EXIT_SUCCESS; if (matrizb[sz - 1] == '\n') matrizb[sz - 1] = '\0'; else { matrizb = argv[2]; leematriz(matrizb, &B, &bm, &bn); if (!B) { printf(" Imposible leer B de %s, código de error %d!\n", matrizb, bn); printf("leido B =\n"); imprimematriz(b, bm, bn); C = multiplicamatrices(a, am, an, B, bm, bn, C, &cm, &cn); if (!C) { printf(" Imposible multiplicar AxB!\n"); printf("\nc = AxB =\n"); imprimematriz(c, cm, cn); if (argc < 4) { printf("indique el nombre del fichero donde guardar la matriz C: "); matrizc = malloc(path_max + 1); fgets(matrizc, PATH_MAX, stdin); if (!(sz = strlen(matrizc))) { return EXIT_SUCCESS; if (matrizc[sz - 1] == '\n') matrizc[sz - 1] = '\0'; else { matrizc = argv[3]; if (escribematriz(matrizc, C, cm, cn)) { printf(" Imposible escribir C en %s!\n", matrizc); Liberamos la memoria free(a); free(b); free(c); if (argc < 2) free(matriza); if (argc < 3) free(matrizb); if (argc < 4) free(matrizc); 10/13
11 return (EXIT_SUCCESS); ## -*- Makefile -*- CFLAGS = -g -Wall # Enlaza todos los.o en un fichero final ejecutable a.out: principal.o matematico.o ficheros.o gcc $(CFLAGS) -o $@ principal.o matematico.o ficheros.o # Compila ficheros fuente en ficheros.o principal.o: principal.c matematico.h ficheros.h gcc $(CFLAGS) -c principal.c matematico.o: matematico.c matematico.h gcc $(CFLAGS) -c matematico.c ficheros.o: ficheros.c ficheros.h matematico.h gcc $(CFLAGS) -c ficheros.c #### Para limpiar el directorio de ficheros generados #### clean: rm -f a.out *.o 3. Escribe un programa que dado un nombre de fichero, que se pasará como parámetro en la línea de comandos, haga que la primera letra de cada palabra esté en mayúsculas. Se deberá poder compilar en modo debug, mostrando en ese caso los principales pasos de ejecución. Crea un fichero makefile para generar automáticamente el programa ejecutable. Solución: Una posible implementación sería ésta: * File: ponmayusculas.h #ifndef _PONMAYUSCULAS_H #define _PONMAYUSCULAS_H * * Abre el fichero *nombrefichero* en modo lectura escritura y cambia la * primera letra de capa palabra a mayúsculas. * Devuelve 0 si todo va bien, un código de error en otro caso. int ponmayusculas(char *nombrefichero); #endif _PONMAYUSCULAS_H * File: ponmayusculas.c 11/13
12 #include "ponmayusculas.h" #include <stdio.h> #include <ctype.h> int ponmayusculas(char* nombrefichero) { FILE *f; int c; f = fopen(nombrefichero, "r+"); if (!f) { #ifdef DEBUG fprintf(stderr, "El fichero %s no se ha podido abrir correctamente\n", nombrefichero); #endif return 1; #ifdef DEBUG fprintf(stderr, "Fichero %s abierto correctamente\n", nombrefichero); #endif while (!feof(f)) { #ifdef DEBUG fprintf(stderr, "Buscando inicio de palabra... "); #endif while (!isalnum(c = getc(f)) &&!feof(f));//buscamos principio palabra if (feof(f)) break; #ifdef DEBUG fprintf(stderr, "encontrado '%c', convirtiendo en '%c'\n", c, toupper(c)); #endif fseek(f, -1, SEEK_CUR); //Nos movemos uno atrás para sobreescribir putc(toupper(c), f); //Sobreescribimos con la versión en mayúsculas while (isalpha(c = getc(f)) &&!feof(f)); //Saltamos el resto palabra #ifdef DEBUG fprintf(stderr, "\nfichero %s procesado completamente\n", nombrefichero); #endif return 0; * File: principal.c #include <stdio.h> #include <stdlib.h> #include "ponmayusculas.h" void imprimeuso(char *ejecutable) { fprintf(stderr, "Uso del programa:\n\t%s <nombre_fichero_a_procesar>\n", ejecutable); 12/13
13 fputs(" Este programa modifica el 'fichero_a_procesar' convirtiendo", stderr); fputs("cada primera letra de cada palabra a mayusculas.", stderr); int main(int argc, char** argv) { if (argc < 2) { imprimeuso(argv[0]); if (ponmayusculas(argv[1])) { fprintf(stderr, "El fichero %s ha sido imposible de procesar\n", argv[1]); imprimeuso(argv[0]); return (EXIT_SUCCESS); ## -*- Makefile -*- CFLAGS = -g -Wall -DDEBUG #CFLAGS = -g -Wall # Enlaza todos los.o en un fichero final ejecutable a.out: principal.o ponmayusculas.o gcc $(CFLAGS) -o $@ principal.o ponmayusculas.o # Compila ficheros fuente en ficheros.o principal.o: principal.c ponmayusculas.h gcc $(CFLAGS) -c principal.c ponmayusculas.o: ponmayusculas.c ponmayusculas.h gcc $(CFLAGS) -c ponmayusculas.c #### Para limpiar el directorio de ficheros generados #### clean: rm -f a.out *.o 13/13
Taller de Sistemas Operativos Introducción
Taller de Sistemas Operativos Introducción Escuela de Ingeniería Civil en Informática Universidad de Valparaíso, Chile http:// Conceptos generales 2 Proceso stdin Descriptor Flujo (FILE*) 0 stdout 1 Proceso
Más detallesPrueba de Laboratorio Modelo B01 Semáforos y Memoria Compartida
Prueba de Laboratorio APELLIDOS: NOMBRE: GRUPO DE LABORATORIO: Indicaciones: No se permiten libros, apuntes ni teléfonos móviles. Cuando tenga una solución al ejercicio muéstrela al profesor (compilación
Más detallesEl lenguaje de Programación C. Fernando J. Pereda <ferdy@gentoo.org>
El lenguaje de Programación C Fernando J. Pereda Por qué aprender C? Portable y muy extendido Estándar (C89, C99) El lenguaje de los sistemas Un lenguaje fácil (no, no es broma) Por
Más detallesPRÁCTICA DE LABORATORIO 3 Tipo Abstrato de Dato
ESCUELA DE INGENIERÍA DE SISTEMAS DEPARTAMENTO DE COMPUTACIÓN PROGRAMACIÓN 2 PRÁCTICA DE LABORATORIO 3 Tipo Abstrato de Dato Contenido Introducción...1 Dato...1 Valor...1 Tipo de Dato...2 Tipo Abstracto
Más detallesProgramación en C. (Segunda Parte) DATSI, FI, UPM José M. Peña. jmpena@fi.upm.es. Programación en C
(Segunda Parte) DATSI, FI, UPM José M. Peña jmpena@fi.upm.es 1 Índice Estructura de un programa C. Variables básicas. Operaciones aritméticas. Sentencias de control. Arrays y Strings. Funciones. Estructuras
Más detallesTema 7 Vectores y cadenas de caracteres. Fundamentos de Informática
Tema 7 Fundamentos de Informática Índice 1. Qué es un vector? 2. Vectores unidimensionales 3. Cadenas de caracteres 4. Paso de vectores unidimensionales a funciones. 5. Vectores multidimensionales: matrices
Más detallesRelación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática
Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2013-2014. 1º Grado en Informática Práctica 2: Memoria dinámica y Bibliotecas Objetivos Practicar conceptos
Más detallesEsquema de un programa en C: bloques básicos
Esquema de un programa en C: bloques básicos // Incluimos los ficheros de cabecera que necesitemos. // Esto es un comentario #include #include // Si queremos definir alguna constante,
Más detallesUso avanzado de punteros
Uso avanzado de punteros Mario Medina C. mariomedina@udec.cl Punteros Contienen direcciones de memoria Punteros a tipos de datos simples int, char, float, double Punteros a estructuras Punteros a vectores
Más detallesProgramación Estructurada
Programación Estructurada PROGRAMACIÓN ESTRUCTURADA 1 Sesión No. 11 Nombre: Manejo de archivos Contextualización En los lenguajes de programación estructurada como C, que carecían de una conexión a base
Más detallesFicheros conceptos. Manejo de ficheros en C. Apertura del fichero Función fopen: nombre del fichero. Apertura del fichero Función fopen
Fundamentos de Informática. Dpto. de ATC - Página 1 de 8 conceptos Manejo de ficheros en C Contienen los datos que se almacenan en dispositivos de almacenamiento masivo: disquetes, discos duros, DROM,
Más detallesEDITRAN/TR. Windows/Unix. Manual de referencia
EDITRAN/TR Windows/Unix Manual de referencia INDRA 30 de octubre de 2014 ÍNDICE 1. INTRODUCCIÓN.... 1-1 2. INTERFAZ DE PROGRAMACIÓN.... 2-1 2.1. DESCRIPCION... 2-1 2.2. FUNCIONES DE ENVIO Y RECEPCION...
Más detallesPunteros. Definición Un puntero es un dato que contiene una dirección de memoria.
Punteros Definición Un puntero es un dato que contiene una dirección de memoria. NOTA: Existe una dirección especial que se representa por medio de la constante NULL (definida en ) y se emplea
Más detallesModelos de Computación I. Ingeniería Informática
Prácticas Pag. 1 Modelos de Computación I Ingeniería Informática Práctica 1 Lex como localizador de expresiones regulares con acciones asociadas Curso 2008-2009 Profesores: Carlos J. Mantas Ruiz Aida Jiménez
Más detallesSistemas Operativos: Programación de Sistemas. Curso 2006-07. Oscar Déniz Suárez Alexis Quesada Arencibia Francisco J.
Tema 2 : entorno programación linux Sistemas Operativos: Programación de Sistemas Oscar Déniz Suárez Alexis Quesada Arencibia Francisco J. Santana Pérez Curso 2006-07 Francisco J. Santana 1 Programación
Más detallesFILE *nombre_puntero_fichero; fopen(char_nombre_archivo,char_modo_apertura ); MODOS DE APERTURA. Abre un archivo de texto para lectura.
FICHEROS El sistema de archivos de C está diseñado para secuencias que son independientes del dispositivo. Existen dos tipos se secuencias: de texto que es una ristra de caracteres organizados en líneas
Más detallesRepaso sobre lectura de datos desde la línea de comandos, manejo de memoria dinámica e introducción a la librería GSL
Clase No. 5: Repaso sobre lectura de datos desde la línea de comandos, manejo de memoria dinámica e introducción a la librería GSL MAT 251 Dr. Alonso Ramírez Manzanares CIMAT, A.C. e-mail: alram@ cimat.mx
Más detallesLENGUAJE. Tema 1 - Introducción
LENGUAJE Tema 1 - Introducción HISTORIA DEL LENGUAJE C El lenguaje de programación C fue creado por Dennis Ritchie cuando trabajaba en Bell Laboratories de AT&T junto con Ken Thompson en el diseño del
Más detallesUniversidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C
Universidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C Directivas del procesador Main() { Declaraciones Definiciones proposiciones }
Más detallesTEMA 3: EL LENGUAJE C: PRESENTACIÓN
TEMA 3: EL LENGUAJE C: PRESENTACIÓN Historia del lenguaje C Características del lenguaje C Estructura de un programa en C El editor de textos: elementos Funciones: de usuario y de librería Librerías de
Más detallesEQUIVALENCIAS EN C DE CONSTRUCCIONES SECUENICIALES EN PSEUDOCÓDIGO
EQUIVALENCIAS EN C DE CONSTRUCCIONES SECUENICIALES EN PSEUDOCÓDIGO TIPOS DE DATOS BÁSICOS: Tipo Tipo Tamaño aproximado en bits Rango mínimo Carácter char 8 0 a 55 Entero int 16-3767 a 3767 Real float 3
Más detallesIntroducción a C++ y Code::Blocks
Introducción a C++ y Práctica Imperativo Clase 1 Luis Agustín Nieto Departamento de Computación, FCEyN,Universidad de Buenos Aires. 28 de mayo de 2010 Menu de esta Tarde Funcional Vs. Imperativo (Intérprete
Más detallesPaso de Borland Turbo C (bajo DOS) a Anjuta (Linux) 1.
Paso de Borland Turbo C (bajo DOS) a Anjuta (Linux) 1. Anjuta es un entorno de desarrollo de C que podemos encontrar en cualquier distribución de GNU/Linux. Si nuestra distribución no dispone de ella,
Más detallesArquitectura de Computadores: Exámenes y Controles
2º curso / 2º cuatr. Grado en Ing. Informática Doble Grado en Ing. Informática y Matemáticas Arquitectura de Computadores: Exámenes y Controles Examen de Prácticas AC 05/07/2013 resuelto Material elaborado
Más detallesReglas básicas de la programación en lenguaje C
0. Introducción Reglas básicas de la programación en lenguaje C ISO - SO Departament d'arquitectura de Computadors Universitat Politècnica de Catalunya C es un lenguaje de programación de propósito general.
Más detallesIntroduccion al Lenguaje C. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia
Introduccion al Lenguaje C Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Introducción C es un lenguaje de programación creado en 1972 por
Más detallesGenerador de analizadores sintácticos BISON
Generador de analizadores sintácticos BISON PROCESADORES DE LENGUAJES 4 o Informática http://ccia.ei.uvigo.es/docencia/pl noviembre-2008 2008 ccia PL 1. Introducción Traduce la especificación de una gramática
Más detalles1. Cuestiones. Ejercicios resueltos de C. Diego Rodríguez-Losada 1. //a) #include <stdio.h> main( ) { int x = 0, y = 0; //b) #include <stdio.
1. Cuestiones Enunciado Febrero 04. Ejercicio Tercero. (2 puntos 30 minutos) Resolver los siguientes problemas indicando, en la parte inferior, cual es el resultado de cada programa. En caso de que el
Más detallesTema ADQUISICIÓN Y TRATAMIENTO DE DATOS. Departamento de Ciencias de la Computación e IA. Subprogramas en C
Tema ADQUISICIÓN Y TRATAMIENTO DE DATOS Departamento de Ciencias de la Computación e IA Subprogramas en C Objetivo Una vez que tengamos un programa que resuelva un problema concreto, ser capaces de usarlo
Más detallesCaracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación
1 Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera Fundamentos de programación Agenda Caracteres y Cadenas Conversión de Datos Introducción a las funciones y procedimientos
Más detallesPreliminares. Tipos de variables y Expresiones
Preliminares. Tipos de variables y Expresiones Felipe Osorio Instituto de Estadística Pontificia Universidad Católica de Valparaíso Marzo 5, 2015 1 / 20 Preliminares Computadoras desarrollan tareas a un
Más detallesUNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA Programación Avanzada en C
Rutinas de conversión. De enteros a caracteres. Ltoa. Long to Ascii. Pasar de un número en representación interna a una secuencia de caracteres, permite desplegar en la salida los valores de las variables
Más detallesLenguaje C Preprocesador, Compilación y Enlazado.
Lenguaje C Preprocesador, Compilación y Enlazado. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Directivas de Compilación Las directivas
Más detallesApuntadores (Punteros)
Apuntadores (Punteros) x9ff10 X int 209 SESION 7 *ptr Definición Llamados también punteros. Un Apuntador es una variable que contiene una dirección de memoria, la cual corresponderá a un dato o a una variable
Más detallesTIPOS DE DATOS BASICOS EN LENGUAJE C
TIPOS DE DATOS BASICOS EN LENGUAJE C TIPO char int float double void ANCHO EN BIT 64 0 TIPOS DE DATOS RANGO EN PC -12 a 127 3.4E-3 a 3.4E+3 1.7E-30 a 1.7E+30 sin valores TIPO ANCHO EN BIT RANGO EN PC char
Más detallesSe guardan en archivos con extencion c y los cabezales con extension h
Se guardan en archivos con extencion c y los cabezales con extension h Tipos de Variables: Tipo Tamaño(bytes) Limite inferior Limite superior char 1 -- -- unsigned char 1 0 255 short int 2-32768 +32767
Más detallessockets Flujo (SOCK_STREAM) Comunicación bidireccional Confiable (entrega garantizada) Información ordenada en el destino Datagrama (SOCK_DGRAM)
s s Comunicación punto-a-punto entre procesos Los s son los extremos de la comunicación Diferentes dominios UNIX: Entre procesos de un mismo equipo Internet: Entre procesos de diferentes equipos (TCP/IP)
Más detallesProblemas de Redes de Computadores. Conjunto de problemas 1
Problemas de Redes de Computadores. Ingeniería Técnica en Informática de Gestión Conjunto de problemas 1 Pregunta 1.1: Si configuro mi servidor Web para que no acepte conexiones desde la dirección IP 130.206.1.1,
Más detalles#include <stdio.h> /* Factorial de un número - versión 1- */
Ejemplo 1: Programa que calcula el factorial de 'n' números introducidos desde teclado. Primera versión: /* Factorial de un número - versión 1- */ long int factorial (int x) /*definición de función*/ int
Más detallesPRÁCTICA DE LABORATORIO 4 Programación Orientada a Objetos
ESCUELA DE INGENIERÍA DE SISTEMAS DEPARTAMENTO DE COMPUTACIÓN PROGRAMACIÓN 2 PRÁCTICA DE LABORATORIO 4 Programación Orientada a Objetos Contenido Introducción...1 Objeto...2 Atributo...2 Métodos...2 Clase...3
Más detallesInstituto Politécnico Nacional
Instituto Politécnico Nacional Secretaria Académica Dirección de Estudios Profesionales Escuela Superior de Ingeniería Mecánica y Eléctrica Unidad Culhuacan Ingeniería en Comunicaciones y Electrónica Academia
Más detallesProblemas de Redes de Computadores. Ingeniería Técnica en Informática de Gestión Conjunto de problemas 1
Problemas de Redes de Computadores. Ingeniería Técnica en Informática de Gestión Conjunto de problemas 1 Preguntas cortas Pregunta 1.1: Si configuro mi servidor Web para que no acepte conexiones desde
Más detallesEl lenguaje C: Elementos básicos del lenguaje
Facultad de Ciencias Exactas, Ingeniería y Agrimensura Departamento de Sistemas e Informática Escuela de Electrónica Informática II El lenguaje C: Elementos básicos del lenguaje Este material debe utilizarse
Más detallesFundamentos de programación
Fundamentos de programación Estructuras de Control Estructuras de control Estructuras de control Estructura secuencial Estructura alternativa Sentencias if, if else Sentencias if else anidadas El operador
Más detallesUNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE CIENCIAS PRACTICA DE PROCESOS HERRAMIENTAS
UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE CIENCIAS PRACTICA DE PROCESOS HERRAMIENTAS Caso 1: 1.- Necesitamos un cd o Dvd para grabar alguna de las versiones de livecd de Linux. 2.- Liga de una
Más detallesEl lenguaje C. #define MAX LINEA 1000 /* maximo tamanio de linea de entrada */
Principios de Programación El lenguaje C 1. Variables locales y globales 1.1. Variables locales Las funciones permiten al programador modularizar un programa. Todas las variables declaradas en las definiciones
Más detallesEntrada y Salida de Datos. Lectura de archivos.
1 Entrada y Salida de Datos. Lectura de archivos. Son innumerables los casos en los que son necesarios guardar datos entre ejecuciones de un programa para poder ser recuperados en futuras sesiones. Los
Más detallesSOLUCION EXAMEN junio 2006
SOLUCION EXAMEN junio 2006 1. Explique razonadamente si las siguientes afirmaciones son verdaderas o falsas: I) (1 p) En UNIX únicamente se distinguen dos tipos de procesos: los procesos de usuario y los
Más detallesFormatos para prácticas de laboratorio
Fecha de efectividad: CARRERA PLAN DE ESTUDIO CLAVE ASIGNATURA NOMBRE DE LA ASIGNATURA LSC 2003-1 5221 Lenguaje de Programación Estructurada PRÁCTICA No. 8 LABORATORIO DE NOMBRE DE LA PRÁCTICA Licenciado
Más detallesTema 5: Diseño modular. Índice. Notas. Programación 2. Curso 2014-2015. Notas. Ejemplo. La herramienta make. 1 Diseño modular.
: Programación 2 Curso 2014-2015 Índice 1 2 3 (1/2) Cuando el programa crece es necesario dividirlo en módulos Cada módulo agrupa una serie de funciones con algo en común El módulo puede reutilizarse en
Más detallesProgramación. Test Autoevaluación Tema 3
Programación Test Autoevaluación Tema 3 Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordoñez Morales Juan Gómez Romero José A. Iglesias Martínez José Luis Mira Peidro SOLUCIONES 1.
Más detallesMemoria Dinámica. Jornadas de Marzo 2010 Grupo de Usuarios de Linux Tania Pérez
Jornadas de Marzo 2010 Grupo de Usuarios de Linux Tania Pérez 1. PUNTEROS 2. MEMORIA DINÁMICA 2 1. PUNTEROS 3 Qué es un puntero? Un tipo de variable cuyo valor es la dirección de memoria de otra variable.
Más detallesProf. Dr. Paul Bustamante
Prácticas de C++ Practica Nº 10 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante INDICE 1.1 EJERCICIO 1: MI PRIMER FICHERO EN BINARIO... 1 1.2 EJERCICIO 2: LEYENDO MI PRIMER FICHERO
Más detallesTEMA 4. ELEMENTOS BÁSICOS DE PROGRAMACIÓN
TEMA 4. ELEMENTOS BÁSICOS DE PROGRAMACIÓN 4.1 Definiciones y palabras reservadas básicas del C El lenguaje C++ está compuesto por: 32 palabras clave (estándar ANSI), comunes a todos los compiladores de
Más detallesInformática Ingeniería en Electrónica y Automática Industrial
Informática Ingeniería en Electrónica y Automática Industrial Entrada y salida estándar V1.3 Autores Entrada y salida estándar Entradas y salidas Salida con formato: printf() Entrada de datos con formato:
Más detallesLenguajes de programación
Lenguajes de programación Un computador solo entiende lenguaje binario Un procesador tiene un conjunto finito de operaciones binarias Un programa de computador es una secuencia de estas instrucciones Etapas
Más detallesPor ejemplo, para declarar un arreglo de enteros llamado a con diez elementos se hace de la siguiente forma:
Arreglos unidimensionales y multidimensionales Los arreglos son una colección de variables del mismo tipo que se referencian utilizando un nombre común. Un arreglo consta de posiciones de memoria contigua.
Más detallesPráctica de gsoap. int ns enviar (unsigned nodo, std::string cadena, std::string &resultado); int ns recibir(unsigned nodo, std::string &resultado);
Práctica de gsoap Para desarrollar programas que utilicen gsoap para llevar a cabo las comunicaciones, debemos bajar el paquete gsoap linux 2.7.tgz disponible en: http://atc.ugr.es/pedro/docencia/irhc/irhc.html
Más detallesProgramación En Lenguaje C
Programación En Lenguaje C Introducción Básica para Primero de Bachillerato TECNOLOGÍA DE LA INFORMACIÓN IES PALAS ATENEA Lenguaje C Estructurado Secuencial De alto Nivel Altamente portable Necesita un
Más detallesSistemas Operativos Práctica 3
Sistemas Operativos Práctica 3 Ing. Andrés Bustamante afbustamanteg@unal.edu.co Ingeniería de Sistemas Facultad de Ingeniería Universidad de la Amazonia 2009 1. Objetivo El objetivo de la práctica es que
Más detallesUSO DE SUBRUTINAS, TRANSMISIÓN DE PARÁMETROS Y COMPILACIÓN CONDICIONAL EN C++
USO DE SUBRUTINAS, TRANSMISIÓN DE PARÁMETROS Y COMPILACIÓN CONDICIONAL EN C++ Bruno López Takeyas Instituto Tecnológico de Nuevo Laredo Reforma Sur 2007, C.P. 88250, Nuevo Laredo, Tamps. México http://www.itnuevolaredo.edu.mx/takeyas
Más detallesFUNDAMENTOS DE INFORMÁTICA 1º Ingeniería Industrial
FUNDAMENTOS DE INFORMÁTICA º PRÁCTICA 4: Funciones y vectores CURSO 5/6 Área de Ingeniería de Sistemas y Automática ISA-UMH R-2-FI4v. FUNDAMENTOS DE INFORMÁTICA PRÁCTICA 4: Funciones y vectores curso 25-26
Más detallesTema 5: Herramientas de programación y diseño modular
: Herramientas de programación y diseño Programación 2 Curso 2013-2014 Índice 1 2 3 4 El proceso de compilación (1/2) La tarea de traducir un programa fuente en ejecutable se realiza en dos fases: : El
Más detallesLaboratorio de Arquitectura de Redes. Entrada y salida estándar
Laboratorio de Arquitectura de Redes Entrada y salida estándar Entrada y salida estándar Entradas y salidas Salida con formato: printf() Entrada de datos con formato: scanf() El buffer de teclado Entrada
Más detallesSOR -::- Prácticas -::- Curso 05/06. RCP es un estándar desarrollado por Sun Microsystems y usado por muchos distribuidores de sistemas UNIX.
RPC RCP es un estándar desarrollado por Sun Microsystems y usado por muchos distribuidores de sistemas UNIX. El RPC es una interfaz de programación de aplicación (API) disponible para el desarrollo de
Más detallesINTRODUCCIÓN AL LENGUAJE C
INTRODUCCIÓN AL LENGUAJE C Fundamentos de Informática EUP ULPGC Jose Torres 1 de 36 Historia de C Precursores: muchas ideas provienen de BCPL (Martin Richards, 1967) y de B (Ken Thompson, 1970) C fue diseñado
Más detalles!! Identificar las señales que llegan a la consola.
Objetivos TEMA 9 Gestión de Errores y Excepciones!! Describir el mecanismo de gestión de señales en Windows API y la gestión de excepciones.!! Identificar las señales que llegan a la consola. Estudio de
Más detallesLenguaje C Funciones. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia
Lenguaje C Funciones Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Qué es una función o rutina/subrutina? Se presenta como un subalgoritmo
Más detallesLENGUAJE ANSI C Guía de referencia
Apéndice W2 LENGUAJE ANSI C Guía de referencia C.1. Elementos básicos de un programa El lenguaje C fue desarrollado en Bell laboratories para su uso en investigación y se caracteriza por un gran número
Más detallesProgramación. Ejercicios Tema 5. Funciones
Programación Ejercicios Tema 5 Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordoñez Morales Juan Gómez Romero Jose A. Iglesias Martínez Jose Luis Mira 1 SOLUCIONES 1. Escriba una función
Más detallesProgramación en lenguaje C
1 Introducción UNIVERSIDAD NACIONAL ANDRÉS BELLO Programación en lenguaje C Lenguaje de programación creado en 1972 por Dennis Ritchie, es la evolución del lenguaje de programación B. Linux, kernel del
Más detallesProcesos e Hilos en C
Procesos e Hilos en C 6 de febrero de 2012 En esta sesión vamos a escribir programas en lenguaje C que utilicen hilos y procesos para comparar el rendimiento del sistema ante la gestión de unos y otros.
Más detallesSeminario 1. Conexión a Oracle
Seminario 1. Conexión a Oracle Laboratorio de Programación Curso 2007/2008 Fran J. Ruiz Emilio Sobreviela Diseño E/R usuario contrasena Usuarios 1:1 es id_cliente nombre 1:1 Clientes apellidos edad 1 Creación
Más detallesLenguaje C. Lenguaje C. Erwin Meza Vega
Lenguaje C Erwin Meza Vega Outline 1 Introducción 2 Tipos básicos de datos 3 Estructuras de control 4 Funciones 5 Ejemplos de funciones 6 Tipos compuestos de datos 7 Arreglos 8 Apuntadores (punteros) 9
Más detalles1 Estructura básica de un programa C++
Elementos básicos de un lenguaje de alto nivel: C++ CONTENIDOS 1. Estructura básica de un programa C++. 2. Tipos de datos simples. 3. Constantes y variables en C++. Declaración. 4. Operadores y expresiones.
Más detallesObjetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero.
Objetivos de la práctica: - Practicar uso de ficheros: abrir, cerrar y tratamiento de información contenida en el fichero. Uso de Ficheros Todas las estructuras de datos vistas hasta ahora utilizan la
Más detallesESTRUCTURAS CONDICIONALES SIMPLES: ESTRUCTURAS CONDICIONALES DOBLES: ESTRUCTURAS CONDICIONALES ANIDADAS:
ESTRUCTURAS CONDICIONALES SIMPLES: Si (Condición) entonces if (Condición) { ESTRUCTURAS CONDICIONALES DOBLES: Si (Condición) entonces if (Condición) { { ESTRUCTURAS CONDICIONALES ANIDADAS: Si (Condición1)
Más detallesProgramación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C
Algoritmo y Estructura de Datos Ing. M. Laura López 1 Estructura de un programa en C 2 Estructura de un programa en C #include Archivos de cabecera # define Definición de constantes Declaraciones Globales
Más detallesRelación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática
Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2013-2014. 1º Grado en Informática Práctica 1: Punteros Objetivos Se hará hincapié en la aritmética de punteros
Más detallesLenguaje C Bucles, Condicionales, operadores y Algoritmos.
Lenguaje C Bucles, Condicionales, operadores y Algoritmos. Omar Andrés Zapata Mesa Grupo de Fenomenología de Interacciones Fundamentales, (Gfif) Universidad de Antioquia Operadores Los operadores son aquellos
Más detallesIntroducción al tipo de dato ARRAY
CONTENIDOS. Introducción al tipo de dato ARRAY. Definición, Características, Declaración, Acceso e Inicialización.. Arrays multidimensionales Definición, Declaración, Acceso e Inicialización. Introducción
Más detallesTEMA 8: ESTRUCTURAS DE DATOS COMPLEJAS 1 VECTORES ESTÁTICOS 2 2 CADENAS O VECTORES DE CARACTERES 6 3 PASO DE CADENAS Y ARRAYS A FUNCIONES 8
TEMA 8: ESTRUCTURAS DE DATOS COMPLEJAS 1 VECTORES ESTÁTICOS 2 1.1 VECTORES O ARRAYS UNIDIMENSIONALES 2 1.2 ARRAYS MULTIDIMENSIONALES 3 1.3 INICIALIZACIÓN DE ARRAYS 4 1.3.1 INICIALIZACIÓN DE ARRAYS SIN
Más detallesESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF
ESCUELA POLITÉCNICA SUPERIOR GRADO EN DISEÑO IND. INFORMÁTICA CURSO 2012-13 PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF HASTA AHORA... En prácticas anteriores se ha aprendido: La estructura principal de un
Más detallesPráctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros
Práctica 3. Paso de parámetros entre subrutinas 1. Objetivo de la práctica El objetivo de esta práctica es que el estudiante se familiarice con la programación en ensamblador y el convenio de paso de parámetros
Más detallesPráctica 0 Introducción a la programación en C
DEPARTAMENTO DE AUTOMÁTICA ARQUITECTURA Y TECNOLOGÍA DE COMPUTADORES OBJETIVO Grado en Ingeniería de Computadores COMPUTACIÓN DE ALTAS PRESTACIONES Práctica 0 Introducción a la programación en C Se pretende
Más detallesLenguajes de programación LPSI EUI UPM CADENAS DE CARACTERES
CADENAS DE CARACTERES Arrays unidimensionales de caracteres \0 es el carácter nulo Toda cadena debe acabar en \0 Lo que hay después de \0 en el array no se considera parte de la cadena Las cadenas constantes
Más detallesPROGRAMACION / Clave: 11214
PRACTICA 10. Programas en DevC++ 1.- Programa que imprima las tablas de multiplicar del 1 al 10, se deberá hacer una pausa entre tabla y tabla de multiplicar. 2.- Programa que se repita N cantidad de veces
Más detallesLenguaje C Elementos de un Programa. Ing. Hugo Fdo. Velasco Peña Universidad Nacional 2006
Lenguaje C Elementos de un Programa Ing. Hugo Fdo. Velasco Peña Universidad Nacional 2006 Objetivos Conocer los elementos que conforman un programa en C 1. Elementos léxicos de un Programa Cuando el programa
Más detallesMetodología y Tecnología de la Programación
Tema 4. Abstracción procedimental y de datos 1. Cuál es el error del siguiente programa? import java.util.scanner; class Respuesta{ static Scanner leer=new Scanner(System.in); int valor = lectura(); System.out.println(valor);
Más detallesEstructuras de Repetición (Hacer-Mientras)
Estructuras de Repetición (Hacer-Mientras) Material Original: Prof. Flor Narciso Modificaciones: Prof. Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería
Más detallesHoja de problemas Estructuras de Control
Departamento de Estadística, I.O. y Computación Ingeniería Técnica Industrial - Electrónica Industrial Fundamentos de Informática Hoja de problemas Estructuras de Control 1. Cuál es el efecto de las siguientes
Más detalles//Esta función es llamada cuando se produce un evento //de teclado void keycallback (void *userdata, SoEventCallback *eventoteclado) {
Solución 4: /******************************************************** * * Este programa permite visualizar ficheros iv (vrml) * ********************************************************/ //Según el sistema
Más detallesOBJETIVOS. Explicar el manejo de archivos de texto. Explicar el manejo de archivos binarios. Desarrollar programas que usen archivos.
/ OBJETIVOS Explicar el manejo de archivos de texto. Explicar el manejo de archivos binarios. Desarrollar programas que usen archivos. LABORATORIO 6 MANEJO DE ARCHIVOS DE TEXTO Y BINARIOS Msc. Walter Fernandez
Más detallesEstructuras de control
Estructuras de control Programación estructurada Estructuras condicionales La sentencia if La cláusula else Encadenamiento y anidamiento El operador condicional?: La sentencia switch Estructuras repetitivas/iterativas
Más detallesIntroducción a la programación en C
AULA POLITÈCNICA / ETSETB Marco A. Peña Basurto José M. Cela Espín Introducción a la programación en C EDICIONS UPC Primera edición: septiembre de 2000 Diseño de la cubierta: Manuel Andreu Los autores,
Más detallesLenguaje C. Tipos de Datos Simples y Estructuras de Control
Lenguaje C Tipos de Datos Simples y Estructuras de Control Lenguaje C C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell como evolución del anterior lenguaje
Más detallesMIA RICARDO GONZALEZ LOZANO APLICACIONES EN LENGUAJE C
MIA RICARDO GONZALEZ LOZANO APLICACIONES EN LENGUAJE C Antes de comenzar a desarrollar aplicaciones podemos crear el programa en cualquier editor de textos, solo hay que guardarlo con la extensión X.c
Más detallesARCHIVOS. 1. Introducción. 2. Definición de archivo. 3. Archivos de acceso secuencial. 4. Gestión de un archivo secuencial de estructuras
ARCHIVOS 1. Introducción 2. Definición de archivo 3. Archivos de acceso secuencial 3.1. fopen 3.2. fclose 3.3. fcloseall 3.4. putc 3.5. getc 3.6. fscanf 3.7. fprintf 4. Gestión de un archivo secuencial
Más detallesUna introducción al compilador C de GNU
Una introducción al compilador C de GNU Héctor Adrián Valdecantos Departamento de Ciencias de Computación Facultad de Ciencias Exactas y Tecnología - UNT Materia: Programación Carrera: Programador Universitario
Más detallesPROGRAMACIÓN N C++ CONSTRUCTORES PROG.C++ L11 CONSTRUCTORES DEL LENGUAJE
L11 CONSTRUCTORES DEL LENGUAJE CLASES class { } PLANTILLAS template { } ESPACIOS DE NOMBRES namespace { } EXCEPCIONES try catch.. SOBRECARGA DE OPERADORES operator (parametros) BIBLIOTECA
Más detalles