Вы находитесь на странице: 1из 5

Informtica Industrial, curso 2013-2014 Ejercicios de Prcticas

Documentacin: Referencia de libreras estndar de C: http://c.conclase.net/librerias/index.php http://en.wikipedia.org/wiki/C_standard_library Referencia de libreras estndar de C para iPhone/iPad (solo gratuitos): https://itunes.apple.com/us/app/codereference/id538732506?mt=8 https://itunes.apple.com/hk/app/progit+/id516234141?mt=8 Referencia de libreras estndar de C para telfono mvil Android (solo gratuitos): https://play.google.com/store/apps/details?id=com.algeo.cref&feature=related_apps#?t =W251bGwsMSwxLDEwOSwiY29tLmFsZ2VvLmNyZWYiXQ.. https://play.google.com/store/apps/details?id=nadsoft.cprogrammingreferencefree&fea ture=related_apps#?t=W251bGwsMSwxLDEwOSwibmFkc29mdC5jcHJvZ3JhbW1pbmdyZ WZlcmVuY2VmcmVlIl0.

1. Realice un programa C que obtenga todos los divisores de un nmero dado. 2. Realice un programa que muestre una a una las palabras de las que est compuesta una cadena de caracteres introducida por el usuario, y que cuente cuntas de ellas tienen ms de 4 letras. 3. Disee una funcin en C que reciba un vector de nmeros reales, v, como argumento de entrada, determine cul de todos ellos es el ms cercano al primero de los elementos del vector y devuelva su posicin, p, dentro del vector.
Ejemplo: Si v = [2, 6, 4, 1, 10] => p = 3

(El nmero ms cercano al 2 es el cuarto (1))

4. Disee una funcin en C que reciba un vector de nmeros reales, v, y devuelva la desviacin tpica de sus elementos. 5. Escribir el cdigo de una funcin que obtenga un n entero aleatorio A entre 0 y 255 y devuelva un vector de caracteres que contenga la conversin en binario de A. Adems, se debe mostrar en pantalla los milisegundos que tarda esta funcin en hacer su trabajo (consultar funciones de librera estndar). Llega a tardar algn milisegundo? qu podras aadir a tu programa para que tarde ms, de forma que tarde algn milisegundo o fraccin de milisegundo (aunque no haga nada til)?

Nota: la funcin int rand(void) devuelve un nmero entero pseudoaleatorio. Su prototipo se encuentra en el archivo stdlib.h 6. En lenguaje C los enteros cortos sin signo ocupan en memoria 2 bytes. Se declaran como unsigned short int. Crea un programa para descomponer un entero corto sin signo en dos bytes utilizando exclusivamente operaciones con punteros. 7. Crear un programa que imprima en pantalla los elementos de un vector de enteros y su suma, accediendo a ellos nicamente mediante aritmtica de punteros. 8. Realiza un programa que pida por teclado el tamao de un vector y que almacene en l nmeros enteros aleatorios. Para recorrer el vector se pide utilizar punteros en lugar de ndices. Nota: el vector se crea en tiempo de ejecucin, con el tamao que el usuario ha elegido. 9. Realizar una funcin que reciba por parmetro dos cadenas de caracteres y debe concatenar la segunda a la primera. El programa principal imprimir el resultado de la concatenacin. 10. Disear una funcin que reciba por parmetro un vector de enteros y que devuelva, tambin por parmetro, el mayor y el menor nmero almacenados en el vector. Probar la funcin desde un programa principal. 11. Realizar (en el papel) las siguientes operaciones: Pasar 10101001011010101010101010101010111b a hexadecimal 0xAB & 0x03 0xAB | 0x03 0xAB ^ 0x03 ~ 0xAB 0xAB >> 2 0xAB << 2 Hacer un programa que realice las operaciones mencionadas (salvo la primera), mostrando el resultado en pantalla, y comprobar los resultados. 12. Dada una variable valor de tipo unsigned char, escribir la expresin C que ponga a 1 los 2 bits de mayor peso y a 0 los 2 bits de menor peso. 13. En los bits 10,9,8,7 de una variable de tipo short int hay codificado un nmero. Almacena su valor en una variable de tipo unsigned char y mustralo por pantalla en formato decimal usando printf().

14. Componer en una variable de tipo unsigned char un dato de 8 bits a partir de los 4 bits de menor peso contenidos en las variables de tipo unsigned short int n_low y n_high. 15. Una tarjeta de adquisicin de datos proporciona a nuestro ordenador las lecturas de tres sensores (temperatura, acidez y nivel de un depsito de lquidos) agrupadas en una sola variable de tipo entero. Los datos recibidos del sensor de temperatura ocupan los 12 bits menos significativos de dicha variable (bits 0 al 11); los datos del sensor de acidez los 8 bits siguientes (bits 12 al 19), y los del sensor de nivel los 10 bits siguientes (bits 20 al 29). El resto de bits de la variable entera se descartan. Realizar un programa capaz de extraer las lecturas de los distintos sensores, mostrando cada una de ellas por pantalla (simular los datos recibidos en la tarjeta introduciendo por teclado valores de la variable entera). 16. Los ficheros .xml contienen informacin estructurada en forma de una serie de etiquetas con valores. Los valores estn entre la apertura de etiqueta <etiqueta> y el cierre de etiqueta </etiqueta> . Las etiquetas pueden estar anidadas unas dentro de otras, pero toda etiqueta que se abra se tiene que cerrar, y siempre en el mismo orden. Ejemplo:

<?xml version="1.0" encoding='iso-8859-1' ?> <micasa> <habitacion id='comedor'> <mueble>aparador</mueble> <mueble>sof</mueble> <puerta a='balcn' /> </habitacion> </micasa> Realice un programa que lea el fichero books.xml (que podr descargar de la pgina web de la asignatura), el cual contiene informacin sobre una lista de libros a comprar, busque en l los precios de los libros y los escriba en un fichero de texto precios.txt, uno por lnea. 17. En la pgina web de la asignatura encontrar la librera curl, que permite cargar pginas web usando funciones similares a las de manejo de ficheros en C. As, la librera provee de funciones url_fopen(), url_fclose(), url_fgets() etc. La pgina web a cargar se le pasa como un URL (una cadena de caracteres http://...). Para usar la librera es necesario que todos los ficheros que descargue de la web de la asignatura estn en la carpeta de su proyecto. Adems, deber incluir en su programa el fichero url_fopen.h, e indicar en su proyecto que se usan las libreras url_fopen.lib, libcurl.lib, libcurldll.lib y libws2_32.lib (en ese orden). Realice un programa que obtenga datos meteorolgicos actuales de Ciudad Real (busque alguna pgina web) y los muestre en pantalla (solo deben

aparecen los datos meteorolgicos, p.ej. la temperatura actual y el estado del cielo). Para que la salida en pantalla sea ms bonita utilice la librera conio que podr descargar de la pgina web de la asignatura. 18. Comunicacin por sockets TCP/IP. Debe desarrollar dos programas: cliente y servidor. Desarrollar un programa cliente que se conecte al servidor y pueda enviarle una palabra o frase. El servidor debe devolver al cliente la palabra o frase con todas las letras en maysculas. Nota 1: El cliente ha de poder funcionar tanto en la misma mquina como en una mquina remota. Nota 2: Partir de los ejemplos de servidor y cliente mostrados en el Tema 5 Sistemas informticos distribuidos. Se pueden descargar de la web de la asignatura.

NORMAS DE ENTREGA MATERIAL DE PRCTICAS

Se deber entregar un fichero .doc, .docx o .pdf con el cuaderno de trabajo de las prcticas. En ese documento se describir brevemente el trabajo realizado en todas las prcticas. Adems, se debe entregar los ficheros con todo el material adicional generado (ficheros .c, ficheros Labview, etc.) en subcarpetas con el nmero de la prctica (ej. PrcticaX). Todo ello (fichero con el cuaderno de trabajo + ficheros con el material generado) se debe entregar comprimido en un nico fichero .zip a travs de la web de la asignatura en el campusvirtual (se habilitar una Entrega de Tarea). El fichero .zip deber tener el nombre completo del alumno. Ejemplo: Jos Luis Prez Snchez-Almagro.zip Cuaderno.docx /Practica1 Ejercicio1.c Ejercicio2.c /Practica 2 Ejercicio1.c

Вам также может понравиться