






Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Son actividades practicas demostradas con capturas de pantalla
Tipo: Ejercicios
1 / 12
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!







En el siguiente trabajo hablaremos sobre C uno de los lenguajes de programación más simple y completo para utilizar en consola. C es un lenguaje de programación de propósito general que ofrece economía sintáctica, control de flujo, estructuras sencillas y un buen conjunto de operadores. Es un lenguaje de nivel medio y no está especializado en ningún tipo de aplicación. Esto lo hace un lenguaje versátil y potente, con un campo de aplicación ilimitado y, sobre todo, se puede aprender rápidamente. En poco tiempo, un programador puede utilizar la totalidad del lenguaje. Este lenguaje ha sido estrechamente ligado al sistema operativo UNIX, puesto que fueron desarrollados conjuntamente. Sin embargo, no está ligado a ningún sistema operativo ni a ninguna máquina concreta. Se le suele llamar lenguaje de programación de sistemas debido a su utilidad para escribir compiladores y sistemas operativos, aunque de igual forma se pueden desarrollar cualquier tipo de aplicación. La base del C proviene del BCPL, escrito por Martin Richards, y del B escrito por Ken Thompson en 1970 para el primer sistema UNIX en un DEC PDP-7. Estos son lenguajes sin tipos, al contrario que el C, que proporciona varios tipos de datos. Los tipos son caracteres, números enteros y en coma flotante, de varios tamaños. Además, se pueden crear tipos derivados mediante la utilización de punteros, vectores, registros y uniones. El primer compilador de C fue escrito por Dennis Ritchie para un DEC PDP-11 y escribió el propio sistema operativo en C. C trabaja con tipos de datos que son directamente tratables por el hardware de las mayorías de computadoras actuales, como son los caracteres, números y direcciones. Estos tipos de datos pueden ser manipulados por las operaciones aritméticas que proporcionan las computadoras. No proporciona mecanismos para tratar tipos de datos que no sean los básicos, debiendo ser el programador el que los desarrolle. Esto permite que el código generado sea muy eficiente y de ahí el éxito que ha tenido como lenguaje de desarrollo de sistemas. No proporciona otros mecanismos de almacenamiento de datos que no sea el estático y no proporciona mecanismos de entrada ni salida. Ello permite que el lenguaje sea reducido y los compiladores de fácil implementación en distintos sistemas. Por contra, estas carencias se compensan mediante la inclusión de funciones de librería para realizar todas estas tareas, que normalmente dependen del sistema operativo.
La forma general es: if (expresion) sentencia; else sentencia; Donde sentencia puede ser una sentencia simple, un bloque de sentencias o nada (en el caso de sentencias vacías). La cláusula else es opcional. Si la expresión del if es cierta (cualquier valor que no sea 0), se ejecuta la sentencia o el bloque de sentencias que constituye el objetivo del if; en cualquier otro caso se ejecuta la sentencia o bloque de sentencias que constituye el objetivo del else, si existe. Siempre se ejecuta el código asociado al if o al else, nunca ambos. Un if anidado es un if que es el objeto de otro if o else. Son muy comunes en la programación. Un sentencia else siempre se refiere al if más próximo que esté en el mismo bloque que el else y que no esté asociado con un if. Por ejemplo: else es opcional. Si la expresión del if es cierta (cualquier valor que no sea 0), se ejecuta la sentencia o el bloque de sentencias que constituye el objetivo del if; en cualquier otro caso se ejecuta la sentencia o bloque de sentencias que constituye el objetivo del else, si existe. Siempre se ejecuta el código asociado al if o al else, nunca ambos. if(i) { if(j) sentencia 1; if(k) sentencia 2; /* este if esta / else sentencia 3; / asociado con este else */ } El estándar ANSI específica que al menos se deben permitir 15 niveles de anidamiento. En la práctica, la mayoría de los compiladores permiten bastantes más. ¿La alternativa? Se puede usar el operador "?" para reemplazar las sentencias if-else con la forma general: general:if(condición) Expresión1; else Expresión2; la? es un operador ternario, ya que necesita tres operandos y tiene la forma general: Condición? Expresión1 : Expresión2;Donde Condición, Expresión1 y Expresión2 son expresiones. El valor de una expresión con? se determina de esta forma, se evalúa Condición, si es cierta se evalúa Expresión1 y se convierte en el
valor de la expresión completa. Si Condición es falsa, se evalúa Expresión2 y su valor se convierte en el valor de la expresión completa. Por ejemplo: x = 10; y = x >9? 100 : 200; En el ejemplo a "y" se le esta asignando el valor 100. SWITCH Es una sentencia de selección múltiple, que compara sucesivamente el valor de una expresión con una lista de constantes enteras o de caracteres. Cuando se encuentra una16-correspondencia, se ejecutan las sentencias asociadas con la constante. La forma general es: -correspondencia, se ejecutan las sentencias asociadas con la constante. La forma general es: switch (expresión) { case constante1: secuencia de sentencias; break; ¿.. ¿.. default: secuencia de sentencias; } Se comprueba el valor de la expresión, por orden, con los valores de las constantes especificadas en las sentencias case. Cuando se encuentra una correspondencia, se ejecuta la secuencia de sentencias asociada con ese case, hasta que se encuentra la sentencia break o el final de la sentencia switch. Si no se incluye la sentencia break, sigue buscando más correspondencias en las siguientes sentencias case. La sentencia sentencia break o el final de la sentencia switch. Si no se incluye la sentencia break, El estándar ANSI específica que una sentencia switch debe permitir al menos 257 sentencias case. En la práctica el número empleado es menor por razones de eficiencia. Aunque case es una sentencia de etiqueta, no tiene calidad por sí misma fuera de un case. En la práctica el número empleado es menor por razones de eficiencia.
for. No es obligatoria ninguna de las tres expresiones, por ejemplo, se puede realizar un bucle infinito de la forma:for(;;) printf("este bucle estará siempre ejecutándose.\n");WHILE Su forma general es:while (condición) sentencia; La condición puede ser cualquier expresión, cualquier valor distinto de 0 es cierto. El bucle itera mientras la condición sea cierta. Cuando la condición se hace falsa, el control del programa pasa a la línea siguiente al código del bucle.DO-WHILE A diferencia de los bucles for y while, que analizan la condición del bucle al principio del mismo, el bucle do- while analiza la condición al final del bucle. Esto significa que le bucle do-while siempre se ejecuta al menos una vez. La forma general es: for y while, que analizan la condición del bucle al principio do { sentencia; } while (condición); Aunque las llaves no son necesarias cuando sólo hay una sentencia, se utilizan normalmente para evitar confusiones al programador con el while. Sentencias de salto C tiene cuatro sentencias que llevan a cabo un salto incondicional (además de goto, pero su uso no está bien visto por sus programadores): return, break, exit() y continue. goto, pero su uso no está bien visto por sus programadores): return, break, exit () y continue. RETURN Se usa para volver de una función. Se trata de una sentencia de salto porque hace que la ejecución vuelva al punto en que se hizo la llamada a la función. Si hay algún valor asociado con return, se trata del valor de vuelta de la función. Si no se especifica un valor de vuelta, se asume que devuelve un valor sin sentido.
Donde expresión es opcional. Se pueden usar tantas sentencias return como se quiera en una función. Sin embargo, la función termina al encontrar el primero. expresión es opcional. Se pueden usar tantas sentencias return como se quiera en una función. Sin embargo, la función termina al encontrar el primero. BREAK Tiene dos usos: para finalizar un case en una sentencia switch y para forzar la terminación inmediata de un bucle, saltando la evaluación condicional normal del ciclo. Cuando se encuentra la sentencia break dentro de un bucle, el bucle finaliza inmediatamente y el control sigue en la sentencia posterior al bucle. EXIT() Igual que se puede interrumpir un bucle, se puede salir anticipadamente de un programa usando la función exit() de la biblioteca estándar. Esta función da lugar a la terminación inmediata del programa, forzando la vuelta al sistema operativo. La forma general de la función exit() es: void exit (int código_de_vuelta); El valor de código_de_vuelta es el que se devuelve al proceso de llamada, que normalmente es el sistema operativo. Generalmente se usa un cero como código de vuelta para indicar que se trata de una terminación normal del programa. Se utiliza otros argumentos para indicar algún tipo de error. CONTINUE Funciona de forma similar a break. Sin embargo, en vez de forzar la terminación, break. Sin embargo, en vez de forzar la terminación, continue fuerza una nueva iteración del bucle y salta cualquier código que exista entremedias. Para el bucle for, continue hace que se ejecuten las partes de prueba condicional y de incremento del bucle. Para los bucles while y do-while, el control del programa pasa a la prueba condicional.
Es la primera vez que utilizo este lenguaje, no soy programador y nunca he programado nada, pero si utilizando C se programa tengo visto que será fácil porque este lenguaje es muy fácil e intuitivo, por lo menos hasta donde he tenido la oportunidad de escudriñarlo. C es muy bueno si la materia se enfoca solamente en este lenguaje creo que me ira muy bien.