4.4 OPERACIONES BÁSICAS DE ENTRADA-SALIDA... 16

4 ELEMENTOS BÁSICOS DE PROGRAMACIÓN ................................................. 2 4.1 DEFINICIONES. PALABRAS RESERVADAS BÁSICAS DEL LENGUAJE C

0 downloads 20 Views 116KB Size

Recommend Stories


16 2:44 PM
3 Volume 1 BILITERACY PATHWAY Observar el mundo a nuestro alrededor Observing the World Around Us UNIT MODULE P Vocabulary to Unlock the Text .

Story Transcript

4

ELEMENTOS BÁSICOS DE PROGRAMACIÓN ................................................. 2

4.1 DEFINICIONES. PALABRAS RESERVADAS BÁSICAS DEL LENGUAJE C...................................................................................................................... 2 4.2 TIPOS, VARIABLES Y CONSTANTES .............................................. 3 4.2.1 4.2.2 4.2.3 4.2.4

Tipos de Datos Fundamentales. .................................................................... 3 Variables y Constantes.................................................................................. 6 Declaración de variables .............................................................................. 8 Declaración de una constante....................................................................... 9

4.3 OPERACIONES BÁSICAS ARITMÉTICO-LÓGICAS. OPERADORES Y EXPRESIONES. .......................................................................... 10 4.3.1 4.3.2 4.3.3 4.3.4 4.3.5 4.3.5.1 4.3.5.2

Operación de asignación............................................................................. 11 Operadores aritméticos............................................................................... 11 Operadores relacionales ............................................................................. 12 Operadores lógicos ..................................................................................... 13 Expresiones. ................................................................................................ 13 Reglas de precedencia y asociatividad ..................................................... 13 Conversiones de tipos en las expresiones................................................. 14

4.3.5.3

Coherencia de tipos. Operaciones de CAST. Moldes .............................. 15

4.4

OPERACIONES BÁSICAS DE ENTRADA-SALIDA .... 16

4.4.1 E/S por consola ........................................................................................... 16 4.4.2 E/S por consola con formato ....................................................................... 16 4.4.2.1 Constantes de carácter con barra invertida............................................... 18

4.5 EJEMPLO: NUESTRO PRIMER PROGRAMA ............................... 19 APENDICE: LA BIBLIOTECA ESTÁNDAR DE C.............................. 20 TABLA CÓDIGOS ASCII.................................................................................... 21

Tema 4.

Pág. 1

4 Elementos básicos de programación 4.1 Definiciones. Palabras reservadas básicas del lenguaje C El lenguaje C fue inventado e implementado por primera vez por Dennis Ritchie. Con el tiempo fueron apareciendo muchas implementaciones de C y aparecieron discrepancias. Para remediarlas el instituto de estándares americano (ANSI) estableció un estándar que definió de una vez por todas el lenguaje C. La lista de las 32 palabras clave, definidas por el estándar ANSI, junto con las añadidas por cada compilador de C particular, y junto con la sintaxis formal del lenguaje C, conforman el lenguaje de programación C. C es un lenguaje que diferencia entre MAYÚSCULAS y minúsculas. Una característica de las palabras clave es que son reservadas, es decir, que no deben ser usadas para otro propósito en un programa en C, más que para el que han sido definidas Todos los programas en C consisten en una o más funciones. La única función que debe estar absolutamente presente es la denominada main(), puesto que es la primera función que es llamada cuando comienza la ejecución del programa y esboza lo que el programa hace (es la función Principal).

Tema 4.

Pág. 2

Dentro del código de cualquier programa en C, podemos incluir comentarios. En C, podemos poner dos tipos de comentarios: /* TEXTO DEL COMENTARIO */ para un bloque // TEXTO DEL COMENTARIO para una línea. 4.2 Tipos, Variables y Constantes 4.2.1

Tipos de Datos Fundamentales.

Existen 5 tipos de datos atómicos (simples o básicos) en C: carácter, entero, coma flotante, coma flotante de doble precisión, y sin valor. El tipo sin valor (void), tiene tres usos: • Para declarar una función como que no devuelve valor alguno. • Para declarar una función sin parámetros. Tema 4.

Pág. 3

• Para crear punteros genéricos (es decir que no apuntan a ningún tipo en particular). A excepción del tipo void, los tipos de datos básicos pueden tener varios modificadores precediéndolos. Estos modificadores los utilizaremos para alterar el significado del tipo base y así ajustarlos a nuestras necesidades en un momento determinado. Los modificadores que podemos utilizar son los que siguen: signed, unsigned, long, y short

Veamos cada uno de los tipos con más detalle: Caracteres (tipo char): Las variables carácter (tipo char) contienen un único carácter y se almacenan en un byte de memoria (8 bits). En un bit se pueden almacenar dos valores (0 y 1); con dos bits se pueden almacenar 22=4 valores (00, 01, 10, 11 en binario, 0, 1, 2, 3 en decimal). Con 8 bits se podrán almacenar 28=256 valores diferentes (normalmente entre 0 y 255). Tema 4.

Pág. 4

Números enteros (tipo int): Una variable tipo int se almacena en 2 bytes, aunque algunos compiladores utilizan 4 bytes. Con 16 bits se pueden almacenar 216=65536 números enteros diferentes, del 0 al 65535 para variables sin signo, y de –32768 al 32767 para variables con signo (que pueden ser positivas y negativas), que es la opción por defecto. Este es el rango de la variables tipo int. Cuando en tiempo de ejecución se le asigna un valor a una variable que queda fuera del rango permitido (situación de overflow o valor excesivo), se produce un error en el resultado de consecuencias imprevisibles. Cuando se necesita ahorrar memoria, podemos utilizar el modificador short, para asegurarnos que sólo ocupe 2 bytes en su representación en memoria. Números enteros (tipo long): Existe la posibilidad de utilizar enteros con un rango mayor si se especifica como tipo long. El rango de un entero long puede variar según el computador o el compilador que se utilice, pero lo normal es que se utilicen 4 bytes (32 bits) para almacenarlos, por lo que se pueden representar 232=4.294.967.296 números enteros diferentes. Si se utilizan números con signo, podrán representase números entre 2.147.483.648 y –2.147.483.648. También se pueden declarar enteros long que sean siempre positivos con la palabra unsigned. Números reales (tipo float): En muchas aplicaciones hacen falta variables reales, capaces de representar magnitudes que contengan una parte entera y una parte fraccionaria o decimal. Estas variables se llaman también de punto flotante. Normalmente, en base 10 y con notación científica, estas

Tema 4.

Pág. 5

variables se representan por medio de la mantisa, que es un número mayor o igual que 0.1 y menor que 1.0 y un exponente que representa la potencia de 10 por la que hay que multiplicar la mantisa para obtener el número considerado. Por ejemplo, π se representa como 0.3141562654·101. Tanto la mantisa como el exponente pueden ser positivos y negativos. Números reales (tipo double): Las variables tipo float tiene un rango y una precisión muy limitada, insuficiente para la mayor parte de los cálculos técnicos y científicos. Este problema se soluciona con el tipo double, que utiliza 8 bytes (64 bits) para almacenar una variable. 4.2.2

Variables y Constantes.

Variables Como sabemos, la memoria de un ordenador consta de un conjunto enorme de palabras, en el que se almacenan datos y programas. Cada posición de memoria puede identificarse mediante un número o una dirección. No es, sin embargo, un sistema cómodo o práctico, por la nula relación mnemotécnica que una dirección de memoria suele tener con el dato contenido, y porque la dirección física de un dato cambia de ejecución a ejecución, o incluso en el transcurso de una misma ejecución del programa. Dadas las citadas dificultades para referirse a un dato por medio de su dirección en memoria, se ha hecho habitual el uso de identificadores. Un identificador es un nombre simbólico que se refiere a un dato o programa determinado, es decir, un nombre para referirse a variables, funciones, etiquetas y cualquier otro objeto definido por el usuario en un programa. El sistema se Tema 4.

Pág. 6

ocupa de mantener una tabla en la que se relaciona cada identificador con el tipo de dato que representa y la posición de memoria en la que está almacenado. Los usuarios pueden elegir con gran libertad los nombres de sus variables y programas, teniendo siempre cuidado de respetar las reglas del lenguaje y de no utilizar un conjunto de palabras reservadas (keywords), que son utilizadas por el propio lenguaje. Todos los identificadores que se utilicen han de ser declarados por el usuario La longitud de un identificador puede variar entre 1 y 32 caracteres. El primer carácter debe ser una letra o un símbolo de subrayado y los caracteres siguientes pueden ser letras, números o símbolos de subrayado. El modo de almacenamiento (storage class) es otra característica de las variables de C que determina cuándo se crea una variable, cuándo deja de existir y desde dónde se puede acceder a ella, es decir, desde dónde es visible. En C existen 4 modos de almacenamiento fundamentales: auto, extern, static y register. Nos centremos en hacer uso exclusivamente del tipo auto: auto (automático): Es la opción por defecto para las variables que se declaran dentro de un bloque En C la declaración debe estar siempre al comienzo del bloque. No es necesario poner la palabra auto. No son inicializadas por defecto, y –antes de que el programa les asigne un valor- pueden contener basura informática.

Tema 4.

Pág. 7

Constates Se entiende por constantes aquel tipo de información numérica o alfanumérica que no puede cambiar más que con una nueva compilación del programa. En el código de un programa en C pueden aparecer diversos tipos de constantes que se van a explicar a continuación. Constantes enteras: 25, -126, etc. Constantes de Punto Flotante: 23.5, -0.05, -3.8E+17 Constantes carácter: Una constante carácter es un carácter cualquiera encerrado entre apóstrofos (tal como ‘x’ o ‘t’). En C no existen constantes tipo char, lo que se llama aquí constantes carácter son en realidad constantes enteras. Cadenas de caracteres: Una cadena de caracteres es una secuencia de caracteres delimitada por comillas (“), como por ejemplo: “Esto es una cadena de caracteres”. Dentro de la cadena pueden aparecer caracteres en blanco. 4.2.3

Declaración de variables

Todas las variables han de ser declaradas antes de poder ser usadas (una variable no declarada producirá un mensaje de error en la compilación), y esta declaración ha de hacerse al principio del programa. Cuando una variable es declarada se le reserva memoria de acuerdo con el tipo incluido en la declaración. Es posible inicializar –dar un valor inicial- las variables en el momento de la declaración. La forma general de declaración es la siguiente: [modo almacenamiento] [Modif.acceso] [Modif.tipo] { [= valor],...} ;

Tema 4.

Pág. 8

donde: • modo de almacenamiento: En nuestro caso no deberemos expresar nada pues el modo auto (el que usaremos) es el modo por defecto • modificadores de acceso: Constante: const, • modificadores de tipo: Con signo: signed (por defecto), Sin signo: unsigned, Largo: long (doble tamaño), Corto: short (la mitad del tamaño) • tipo de dato: carácter: char, Entero: int, Coma flotante: float (simple precisión), o double (doble precisión), Sin valor: void • identificador: El identificador es el nombre con el que nos vamos a referir a la variable. Como vemos, podemos declararnos más de una variable de un tipo determinado en una sola sentencia, con tan solo separar los identificadores por comas (,). • valor: Podemos inicializar la variable en la misma declaración. [], indican opcionalidad , indican obligatoriedad {} , indican que su interior se puede repetir todas las veces que queramos (al menos una) Como vemos toda declaración debe finalizar con un punto y coma (;). 4.2.4

Declaración de una constante

Se puede utilizar el cualificador const en la declaración de una variable para indicar que esa variable no puede cambiar de valor. Por ejemplo Tema 4.

Pág. 9

const float pi=3.141592; Se obtendrá un mensaje de error en la compilación si una variable const figura a la izquierda de un operador de asignación. Así pues, la declaración de una constante será: const = ;

Definición de constantes con la directiva define El lenguaje C también permite definir constantes mediante la directiva #define. Su sintaxis es la siguiente: #define nombre_constante expresion_constante. donde: • nombre_constante es un identificador (por convenio con los caracteres en mayúsculas). • expresion_constante es cualquier expresión constante válida. No puede contener variables. #define PI 3.141592 La directiva #define no es una sentencia y por tanto no termina en punto y coma. El uso de constantes en un programa puede facilitar el mantenimiento de éste. 4.3 Operaciones básicas aritmético-lógicas. Operadores y expresiones. Un operador es un carácter o grupo de caracteres que actúa sobre una, dos o más variables para realizar una determinada operación con un determinado resultado. Los operadores pueden ser unarios, binarios y ternarios, según actúen sobre uno, dos o tres operandos, respectivamente.

Tema 4.

Pág. 10

Una expresión es un conjunto de variables y constantes –y también de otras expresiones más sencillas- relacionadas mediante distintos operadores. 4.3.1

Operación de asignación

La forma general de la sentencia de asignación es la siguiente: = operador= expresión;

equivalente a: = operador expresión

Ejemplo: n=n+1 Equivale a n += 1 4.3.2

Operadores aritméticos

Los operadores ++, y -- son operadores unarios que incrementan o disminuyen en una unidad el valor de la variable a la que afectan. Si preceden a la variable, ésta es incrementada/decrementada antes de que el valor de dicha variable sea utilizado. En caso contrario la variable es incrementada/decrementada después de ser utilizada. Ejemplo:

Tema 4.

Pág. 11

i = 2; j = 2; m = i++;

// m=2 e i=3

n = ++j;

// n=3 y j=3

El operador % devuelve el resto de una división entera. m = 7 % 2; almacenará el valor 2. El operador % no puede aplicarse a los tipos de coma flotante. 4.3.3

Operadores relacionales

Una característica imprescindible de cualquier lenguaje de programación es la de considerar alternativas, esto es, la de proceder de un modo u otro según se cumplan o no ciertas condiciones Los operadores relacionales de C son los siguientes: Operador Acción Mayor que > Mayor o igual que >= Menor que < Menor o igual que

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.