You are on page 1of 7

UNIVERSIDAD DEL CAUCA FACULTAD DE INGENIERIA ELECTRNICA Y TELECOMUNICACIONES DEPARTAMENTO DE SISTEMAS MSC (C) SARA DONNELLY GARCES AGREDO

NOTACION Y ENTORNO DE DESARROLLO OBJETIVOS Realizar la introduccin al lenguaje de desarrollo que se va a utilizar en la asignatura. Introducir los conceptos necesarios para empezar la codificacin en C Hacer la introduccin al entorno de desarrollo 1. RESOLUCION DE PROBLEMAS MEDIANTE COMPUTADOR Una vez que el algoritmo est diseado y representado grficamente mediante una herramienta de programacin (diagrama de flujo, pseudocdigo o diagrama N-S) se debe pasar a la fase de resolucin practica del problema con el computador. Esta fase se descompone a su vez en las siguientes subfases: 1. Codificacin del algoritmo en programa 2. Ejecucin del programa 3. Comprobacin del programa

2. TRADUCTORES DE LENGUAJE Los traductores de lenguaje son programas que traducen a su vez los programas fuente escritos en lenguajes de alto nivel a cdigo maquina. Los traductores se dividen en: 2.1 Compiladores: es un programa que traduce los programas fuentes escritos en lenguajes de alto nivel, a lenguaje maquina. Los programas escritos en lenguaje de alto nivel se llaman programas fuente y el programa traducido programa o cdigo objeto. El compilador traduce sentencia a sentencia el programa fuente. 2.2 Interpretes: es un traductor que toma un programa fuente, lo traduce y a continuacin lo ejecuta. 3. LENGUAJE C El lenguaje C fue inventado e implementado por primera vez por Dennis Ritchie en un DEC PDP11 en Bell Laboratories como evolucin del anterior lenguaje B, a su vez basado en BCPL 3.1 CARACTERSTICAS DEL LENGUAJE C Es un lenguaje de alto nivel Posee 32 palabras clave o reservadas. C distingue entre maysculas y minsculas Los programas en C consisten en una o ms funciones. La nica funcin que debe estar absolutamente presente es la denominada main, siendo la primera funcin que es llamada cuando comienza la ejecucin del programa. Aunque main no forma tcnicamente parte del lenguaje C, hay que tratarla como si lo fuera, pues si se emplea para nombrar una variable, probablemente confundir al compilador. La forma general de un programa en C es:
MCs (c) SaraDonnelly Garcs Agredo Pgina 1

Instrucciones del preprocesador Declaraciones globales Tipo devuelto main (lista de parmetros) EJEMPLO: # include <stdio.h> int main () { printf("Bienvenidos a la clase de introduccin a la informtica "); return 0; } 3.2 ELEMENTOS 3.2.1 INSTRUCCIONES DEL PREPROCESADOR

Se especifica al compilador anteponiendo el signo #. Las directivas que se usan normalmente son: #include: que sirve para insertar el contenido de un archivo en el programa #define: que sirve para definir macros (que permiten reemplazar una cadena por otra) #if, #ifdef, #else y #endif: que sirven para condicionar el compilamiento. ARCHIVOS DE CABECERA

3.2.2

Una directiva (instruccin) #include <stdio.h> indica al compilador que lea el archivo stdio.h de manera que las lneas se sitan en la posicin de la directiva. 3.2.3 DEFINICION DE MACROS

Una macro define un smbolo equivalente a una parte del cdigo C y se utiliza para ello la directiva #define. Por ejemplo #define PI #define EPSILON #define IVA 3.2.4 3.1416 0.00001 16

COMENTARIOS

El compilador ignora los caracteres encerrados entre los smbolos /* y */ . Los comentarios se usan para dar mayor claridad al cdigo, en cuanto a que se permite dar la explicacin pertinente o necesaria Tipo Char unsigned char signed char Int
MCs (c) SaraDonnelly Garcs Agredo

Tamao en bits 8 8 8 16

Rango -127 a 127 8 0 a 255 -127 a 127 -32767 a 32767


Pgina 2

unsigned int signed int short int unsigned short int: signed short int: long int signed long int unsigned long int Float Doubl long doubl 3.2.5 VARIABLES

16 16 16 16 16 32 32 32 32 64 64

0 a 65535 -32767 a 32767 -32767 a 32767 0 a 65535 -32767 a 32767 -2147483647 a 2147483647 -2147483647 a 2147483647 0 a 4294967295 seis dgitos de precisin diez dgitos de precisin diez dgitos de precisin

Todas las variables en C se definen o declaran antes de ser utilizadas. Una declaracin incluye el tipo de dato y el nombre de la variable. Los nombres de las variables en C constan de letras, nmeros y carcter de subrayado. Pueden ser maysculas o minsculas o una mezcla de las dos. C distingue entre maysculas y minsculas por lo cual una variable cuyo nombre sea var es diferente de otra que se llamen Var u otra con nombre VAR. El nombre de una variable no puede empezar por un numero, pero si se puede colocar el digito en cualquier otra parte del nombre, como por ejemplo cont1, cont2, ab2w. Ejemplo: int a; /*declaracin de una variable de tipo entero (int) con nombre a */ char ca2r; /*declaracin de una variable de tipo cadena (char) con nombre ca2r*/ float vr=0.5; /*declaracin de una variable de tipo real (float) con nombre vr a la que se le asigna un valor inicial de 0.5*/

3.2.6

OPERADORES

C es un lenguaje muy rico en operadores. Se definen operadores aritmticos, relacionales y lgicos entre otros.

OPERADORES ARITMTICOS Nombre del operador Ms unitario Suma Preincremento Postincremento Asignacin con suma Menos unitario (negacin) Sintaxis +a a+b ++a a++ a += b -a Sobrecargable Incluido en C S S S S S S S S S S S S
Pgina 3

MCs (c) SaraDonnelly Garcs Agredo

Resta Predecremento Postdecremento Asignacin con resta Multiplicacin Asignacin con multiplicacin Divisin Asignacin con divisin Mdulo (Resto) Asignacin con mdulo

a-b --a a-a -= b a*b a *= b a/b a /= b a%b a %= b OPERADORES DE COMPARACIN

S S S S S S S S S S

S S S S S S S S S S

Nombre del operador Menor que Menor o igual que Mayor que Mayor o igual que No igual que Igual que Negacin lgica AND lgico OR lgico

Sintaxis a<b a <= b a>b a >= b a != b a == b !a a && b a || b

Sobrecargable Incluido en C S S S S S S S S S S S S S S S S S S

OPERADORES A NIVEL DE BIT Nombre del operador Desplazamiento a la izquierda Asignacin con desplazamiento a la izquierda Desplazamiento a la derecha Asignacin con desplazamiento a la derecha Complemento a uno AND binario Asignacin con AND binario OR binario Asignacin con OR binario XOR binario Asignacin con XOR binario Sintaxis a << b a <<= b a >> b a >>= b ~a a&b a &= b a|b a |= b a^b a ^= b Sobrecargable Incluido en C S S S S S S S S S S S S S S S S S S S S S S

MCs (c) SaraDonnelly Garcs Agredo

Pgina 4

OTROS OPERADORES Nombre del operador Asignacin bsica Llamada a funcin ndice de Array Indireccin (Desreferencia) Direccin de (Referencia) Miembro de puntero Miembro Conversin de tipo Coma Condicional ternario Tamao de Sintaxis a=b a() a[b] *a &a a->b a.b (tipo) a a,b a?b:c sizeof a sizeof(tipo) Sobrecargable Incluido en C S S S S S S No S S No No S S S S S S S S S S S

3.2.7

FUNCIONES PARA ENTRADA Y SALIDA

A diferencia de otros lenguajes, C no dispone de sentencias de entrada/salida. En su lugar se utilizan funciones contenidas en la librera estndar y que forman parte integrante del lenguaje. 3.2.7.1 IMPRIMIR EN PANTALLA Para su utilizacin es necesario incluir, al comienzo del programa, el archivo stdio.h en el que estn definidos sus prototipos: #include <stdio.h> donde stdio proviene de standard-inputoutput. Funcin printf() La funcin printf() imprime en la unidad de salida (el monitor, por defecto), el texto, y las constantes y variables que se indiquen. Ejemplo: int i; double tiempo; float masa; printf("Resultado n: %d. En el instante %lf la masa vale %f\n",i, tiempo, masa); En el que se imprimen 3 variables (i, tiempo y masa) con los formatos (%d, %lf y %f), correspondientes a los tipos (int, double y float), respectivamente. La cadena de control se imprime con el valor de cada variable intercalado en el lugar del formato correspondiente.

MCs (c) SaraDonnelly Garcs Agredo

Pgina 5

Identificadores de conversin para la funcin printf Identificador %d %c %s %f %e %g %u %o %x Las secuencias de escape son: Carcter \a \b \f \n \r \t \v \\ \' \" \OOO \xHHH Significado Alerta (pito) Espacio atrs Salto de pgina Salto de lnea Retorno de carro Tabulacin horizontal Tabulacin vertical Barra invertida Comilla simple Comillas dobles Visualiza un carcter cuyo cdigo ASCII es OOO en octal Visualiza un carcter cuyo cdigo ASCII es HHH en hexadecimal Descripcin Se usa para entero decimal Carcter simple Cadena de caracteres Coma flotante (decimal) Coma flotante (decimal) Usa el %f o el %e mas corto Entero decimal sin signo Entero octal sin signo Entero hexadecimal sin signo

3.2.7.2 LEER DESDE EL TECLADO Algo muy usual en un programa es esperar que el usuario introduzca datos por el teclado. Para ello usamos la funcin scanf( ). El uso de scanf es muy similar al de printf con una diferencia, nos da la posibilidad de que el usuario introduzca datos en vez de mostrarlos. No nos permite mostrar texto en la pantalla, por eso si queremos mostrar un mensaje usamos un printf delante. # include <stdio.h> void main (){ char nombre [30]; int edad; printf("Digite su nombre "); scanf ("%s",&nombre); printf("Digite su edad "); scanf ("%d",&edad); printf("Su nombre es %s y su edad %d",nombre,edad); return 0; }
MCs (c) SaraDonnelly Garcs Agredo Pgina 6

PRACTICA 1. Cree un programa que intercambie el contenido de dos variables sin que estos se pierdan 2. Cree un programa que imprima el siguiente men en pantalla ++++++++++++++++++++++++++++++++++++++++++ + MENU + ++++++++++++++++++++++++++++++++++++++++++ + 1. Leer informacin + + 2. Mostrar resultados + + 3. Buscar + + 4. Salir + ++++++++++++++++++++++++++++++++++++++++++ 3. Crear un programa que calcule el promedio de tres valores enteros ledos desde el teclado. 4. En programas grficos es frecuente realizar conversin entre diferentes sistemas de coordenadas con el fin de mostrar en pantalla las transformaciones de cada punto de manera que tenga un aspecto 3D o 2D segn el caso. Le han pedido que haga un programa que realice la conversin de coordenadas polares a (r,) a coordenadas cartesianas (x,y), asi: x = r . cos () y = r . sen () 5. Cree un programa que calcule el rea de un triangulo. El usuario debe digitar las longitudes de la base y la altura. 6. Cree un programa en C que permita calcular el salario de un trabajador, el programa debe recibir las

MCs (c) SaraDonnelly Garcs Agredo

Pgina 7

You might also like