Lenguaje C Ing. Sonia Alexandra Pinzón Nuñez Ing. Rocío Rodríguez Guerrero Tecnología en Sistematización de Datos Facultad Tecnológica - Universidad Distrital Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero
Lenguaje C: Antecedentes El lenguaje C fue desarrollado en Laboratorios Bell para su uso en investigación y se caracteriza por un gran número de propiedades que lo hacen ideal para usos científicos y de gestión. Es un Lenguaje de programación estructurado y posee una amplia librería de funciones que lo hacen uno de los lenguajes más usados por los programadores. Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero
Fases de elaboración de un programa ANÁLISIS Entrada Datos de Entrada Proceso Operaciones que se deben realizar Salida Resultado (Datos de Salida) DISEÑO Pseudocódigo Representar la solución Diagrama de Flujo PRUEBA DE ESCRITORIO CODIFICACIÓN Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero
Fases de un programa en C Errores Edición Compilación Vinculación Ejecución Programa Fuente *.cpp Programa Objeto *. obj Programa Ejecutable *.exe Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero
Estructura de un programa en C Incluir Librerías Definición Global De Constantes De Variables De Funciones #include <conio.h> #include “stdio.h” #define C 100; int num1, num2; char letra; Cabecera void main() { printf(“Digite un número”); scanf(“ %d”,&num1,); num1=num1*C; printf(“el resultado es %d ”, num1); getch(); } Función Principal Definición Local De Constantes, Variables Mostrar Capturar Dato Asignación Capturar Tecla Cuerpo del Programa Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero
Lenguaje C:Tipos de Datos int enteros (números enteros positivos y negativos) 10, -15, 3520 char caracteres (letras) ‘a’, ‘+’, ‘?’ float números en coma flotante (números reales) 1.25 3.456e6 3.456e-6 double números en coma flotante de doble precisión 43228021.55514 void no-tipo (se emplea con punteros) Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero
Lenguaje C: Operadores de Asignación Significado A++, ++A Incrementa en 1 el valor de A (A=A+1) A+=x A=A+x A-=x A=A-x A*=x A=A*x A ⁄ =x A=A ⁄ x Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero
Lenguaje C: Formatos básicos de Printf Valor %d Entero decimal %c Carácter %f Coma flotante (float) %lf Coma flotante (double) \n Salto de línea \t Tabulación \a Sonido Salida de datos Modificadores de salida Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero
Lenguaje C: Estructura de Condición Simple Pseudocódigo Ejemplo: Indicar si un numero es par Si condición entonces Instruccion1 #include <conio.h> #include “stdio.h” int num1; void main() { printf(“Digite un número”); scanf(“ %d”,&num1,); if ( (num1%2) == 0) printf(“el número %d es par”, num1); getch(); } Lenguaje C If (condición) Instruccion1; If (condición) { Instruccion1; Instruccion2;} Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero
Lenguaje C: Estructura de Condición Compuesta Ejemplo: Indicar si un numero es par o impar. Pseudocódigo Si condición entonces Instrucción1 Si no Instrucción2 #include <conio.h> #include “stdio.h” int num1; void main() { printf(“Digite un número”); scanf(“ %d”,&num1,); if ( (num1%2) == 0) printf(“el número %d es par”,num1); else printf(“el número %d es impar”,num1); getch(); } Lenguaje C If (condición) { Instrucción1; instrucción2;} else Instrucción3; Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero
Lenguaje C: Estructura de Condición Anidada #include <conio.h> #include “stdio.h” void main() { int num1, num2; printf(“Digite dos números”); scanf(“ %d”,&num1,); scanf(“ %d”,&num1,); if ( num1 > num2) printf(“el número %d es mayor”, num1); else if ( num1 == num2) printf(“Los numeros son iguales”); printf(“el número %d es mayor”, num2); getch(); } Ejemplo: indicar de dos números cual es el mayor. Lenguaje C If (condición) { If (condición) { instrucción 1; } } else { instrucción 2; } {instrucción 3; } Pseudocódigo Si condición entonces instrucción 1 Si no instrucción 2 si no Instrucción 3 Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero
Lenguaje C: Estructura de Condición Múltiple #include <conio.h> #include “stdio.h” void main() {int dia; printf(“Digite el número del día”); scanf(“%d”,&dia); Switch (dia) { case 1: { printf(“LUNES”); break;} case 2: { printf(“MARTES”); break;} case 3: { printf(“MIERCOLES”); break;} case 4: { printf(“JUEVES”); break;} case 5: { printf(“VIERNES”); break;} case 6: { printf(“SABADO”); break;} case 7: { printf(“DOMINGO”); break;} default: { printf(“NO ES UN DIA”); break;} } getch(); } Ejemplo:Escribir el nombre del día que corresponde a un número Lenguaje C Switch (Variable) { case Val1: { Instruccion1; break;} case Val2: { Instruccion2; break;} default: } Pseudocódigo Caso Variable Caso Val1: Instrucción 1 Caso Val2: Instrucción 2 Otros valores: Instrucción N Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero
Lenguaje C: Estructura de Ciclo Mientras #include <conio.h> #include “stdio.h” #define N 100 void main() { int num=1; While (num<N) printf(“%d”,num); num+=2; } getch(); Ejemplo:Imprimir los primeros cien números impares Pseudocódigo Mientras que condición Instrucciones Fin Mientras Lenguaje C While (condición) { instrucciones; } Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero
Lenguaje C: Estructura de Ciclo Para #include <conio.h> #include “stdio.h” #define N 10 void main() { int suma, i; for ( i=1; i<N;i++) { suma += i * i ; } Printf(“la sumatoria es %d”, suma); getch(); Ejemplo:Imprimir la sumatoria del cuadrado de los 10 primeros números enteros Pseudocódigo Para v=valini, v=valfinal, inc Instrucciones Fin Para . v: variable valini: valor inicial valfinal: valor final inc: incremento Lenguaje C Para (I=valI;I<valf;inc) { instrucciones; } Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero
BIBLIOGRAFIA E INFOGRAFIA Fundamentos de Programación. Algoritmos y Estructuras. Luis Joyanes Aguilar. Editorial Mc Graw Hill. Lenguaje C. Cesar A. Becerra Santamaria http://fuxion.tripod.cl/fundamentos.htm#QUE%20HERRAMIENTAS c.conclase.net/curso/index.php www.udec.cl/~rocanale/apuntes/manual_C/ www.ira.amigar.com/www.lafacu.com/apuntes/informatica/lenguajec_1/ www.yuju.com/didactico/programacion/c/index.html Ing. Sonia Alexandra Pinzón Nuñez - Ing. Rocío Rodríguez Guerrero