Académique Documents
Professionnel Documents
Culture Documents
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Contenido
Introduccin o
Principios bsicos a
Variables y tipos
Operaciones bsicas a
Ejemplos
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Proviene del lenguaje de programacin B diseado o n por Ken Thompson, una versin simplicada de o BCPL
Utilizado para implementar el sistema operativo Unix en la computadora PDP-11 de la empresa DEC
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
En 1978, Brian Kernighan y Dennis Ritchie publican la primera edicin de The C Programming Language o Entre 1983 y 1989 se dene el estndar ANSI a conocido como ANSI C, ampliamente usado por todos los compiladores
En 1979, Bjarne Stroustrup agrega a C las clases (C con clases) En 1983 se agregan elementos de la programacin o orientada a objetos y pasa a llamarse C ++ En 1985 se publica la primera edicin de The C++ o Programming Language
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Aspectos generales
Lenguaje de nivel medio:
Elementos de lenguajes de bajo nivel (ensamblador): acceso a direcciones de memoria, registros, manipulacin de bits, etc. o Elementos de lenguajes de alto nivel: abstraccin, cdigo ms sencillo y o o a comprensible, portable (vlido para diversas mquinas), etc. a a
Lenguaje estructurado:
Todo programa es posible escribirlo con slo tres estructuras de control: o
Secuencial Condicional Repetitiva
Modularidad: un programa se puede dividir en mdulos subprogramas o o (funciones) con el n de hacerlo ms legible y manejable a
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Proceso de creacin o
Proceso de compilacin o
El compilador transforma el cdigo fuente en un programa objeto o El linkeador (linker) combina el programa objeto en un archivo ejecutable El programa ejecutable no se crear si el compilador encuentra errores a en el programa fuente
Proceso de ejecucin o
Se ejecuta el programa y se eval an los resultados u
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Primer programa en C
holamundo.c
stdio.h: standard input output (entrada y salida estndar), archivo que a contiene las deniciones de macros, constantes, declaraciones de funciones, etc. main(): funcin principal que controla todo el programa o {: inicio del programa }: nal del programa printf(Hola maldito mundo\n); funcin de salida de C denida en o stdio.h, imprime el texto entre comillas.
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
#include<stdio.h> main(){ printf("Hola maldito mundo\n"); } invitado:$> mkdir C invitado:$> cd C invitado:/C$> ls invitado:/C$> invitado:$> gedit hola.c invitado:/C$> ls hola.c invitado:/C$> invitado:$> gcc hola.c invitado:/C$> ls a.out hola.c invitado:/C$> invitado:$> ./a.out hola maldito mundo invitado:/C$>
invitado:$> gcc hola.c -o hola invitado:/C$> ls a.out hola hola.c invitado:/C$> invitado:$> ./hola hola maldito mundo invitado:/C$>
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Tipos de datos
Tipos de datos disponibles en C:
char int float double void
Modicadores de signo:
signed: con signo unsigned: sin signo
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Tipos de datos
Tipo unsigned char char short int short int int unsigned long long float double double void
Descripcin o caracter sin signo caracter entero corto entero sin signo entero entero largo sin signo entero largo Real simple precisin o Real doble precisin o Real doble largo Sin valor
bits 8 8 16 32 32 32 32 32 64 80 0
Rango [0, 255] [128, 127] h i 215 , 215 1 h i 0, 232 1 h i 231 , 231 1 h i 0, 232 1 h i 231 , 231 1 h i 3.4 1038 , 3.4 1038 h i 1.7 10308 , 1.7 10308 h i 3.4 104932 , 3.4 104932 Sin rango
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Palabras reservadas
auto break case char const continue default double else enum float for goto if int long return sizeof static struct switch typedef void while
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Declaracin de variables en C o
Componentes de una variable en C:
tipo: dene el conjunto de valores posibles a almacenarse (int, float, etc.) valor: valor especicado por el tipo, almacenado en la variable (3, "no") identicador: nombre que permite acceder a la direccin de memoria donde o se encuentra almacenado el valor (distancia, nota 3, temp) Especicador de almacenamiento: determina el lugar y la forma en que se almacena el objeto cuando se ejecuta el programa (static)
[modificador]
tipo
identificador;
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Inicializacin de variables en C o
Formato de inicializacin de una variable en C: o identificador = valor; Ejemplos:
nota = 5; letra = "x"; radio = 3.1416; masa = 198910000000; temp = 875;
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Salida de datos
printf: imprime datos en pantalla Sintaxis: printf("cadena de formato", arg1, arg2,...,argn); Cadena de formato:
Texto Caracteres de control Especicadores de formato
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Salida de datos
Ejemplo con caracteres de control:
S mbolo \n \a \t \b \f \r \ \ \0 \? \\ \v mensaje caracteres.c Accin o nuevo rengln o emite sonido tabulador horizontal retroceso salto de pgina a retorno de carro imprime comillas dobles retroceso imprime caracter nulo (cero) imprime signo de interrogacin o imprime barra invertida tabulador vertical
#include<stdio.h> main(){ printf("Hola a todos "); printf("y sigo sin dejar lnea en blanco"); printf("ahora dejo una lnea en blanco\n"); printf("se emite un sonido corto\a\n"); printf("ahora dejo un espacio horizontal \t tabulador\n"); }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
mensaje formato.c
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
#include<stdio.h> main(){ // declaracin de variables o long int i, j; char letra; float x, y; double u, v; // inicializacin de variables o i = 3458796; j = 57498746; letra = z; x = 2.6e-38; y = 1.3e38; u = 0.4e-307; v = 1.2e308; // salida de datos printf("Enteros largos: %ld y %ld \n", i, j); printf("Caracter: %c \n", letra); printf("float: %f y %e \n", x, y); printf("double: %lf y %le \n", u, v); }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Salida de datos
Ejemplo con modicadores de formato:
mensaje formato modicador.c
#include<stdio.h> main(){ // declaracin e inicializacin de variables o o float a = 45.375; double pi = 3.141592653589793115997963; // salida de datos para a printf("a: %f \n", a); printf("a con 2 decimales: %.2f \n", a); printf("a con 7 decimales: %.7f \n", a); // salida de datos para pi printf("\npi = %lf \n", pi); printf("pi con 3 decimales: %.3lf \n", pi); printf("pi con 12 decimales: %.12lf \n", pi); printf("pi con 24 decimales: %.24lf \n", pi); }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Ejemplo
error variable.c
#include<stdio.h> main(){ // Inicializa una variable entera int millon = 1000000; // 106 /* La siguiente linea genera un error, la variable billon = 1012 supera a 231 */ int billon = millon*millon; // imprime dato errado printf(" %d al cuadrado es: %d \n", millon, billon); }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Entrada de datos
Sintaxis: scanf("cadena de formato", &arg1, &arg2,..., &argn); Cadena de formato:
Caracteres de espacios en blanco, comas (,) Especicadores de formato
lectura datos.c
#include<stdio.h> main(){ // Declaracin de variables o char nombre[30]; int edad; // lee el nombre printf("Ingrese su nombre: "); scanf("%s", nombre); // lee edad printf("Ingrese su edad: "); scanf("%d", &edad); // Imprime los contenidos de nombre y edad printf("\nnombre: %s\n", nombre); printf("edad: %d\n", edad); }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Operadores aritmticos e
Operador * / + %
operaciones.c
Resultado 21 2.5000 -1 3 1
#include<stdio.h> main(){ // Declaracin de variables o int a = 3; int b = 4; int suma = a+b; int resta = a-b; int producto = a*b; double division = a/b; // division se declara como tipo double int residuo = a %b; // imprime contenido de variables printf("a = %d y b = %d \n", a, b); printf("La suma es %d \n", suma); printf("La resta es %d \n", resta); printf("El producto es %d \n", producto); printf("La divisin es %lf \n", divisin); o o printf("El residuo de dividir %d entre %d es %d \n", b, a, residuo); }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
operaciones molde.c
#include<stdio.h> main(){ // declaracin de variables o int a = 3; int b = 4; // division1 se declara como tipo double y se le asigna un entero double division1 = a/b; // division2 se declara como tipo double y se le asigna un double double division2 = (double)a/(double)b; // imprime contenido de variables printf("a = %d y b = %d \n", a, b); printf("La divisin es %lf \n", divisin1); o o printf("La divisin es %lf \n", divisin2); o o }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Operacin o Igual Diferente de Menor que Mayor que Menor o igual que Mayor o igual que
Resultado 0 1 0 1 1 0
#include<stdio.h> main(){ // Declaracin de variables o int a, b, c; // Inicializacin de variables o a = 2; b = 5; c = -3; printf("a = %d, b = %d y c = %d \n\n", a, b, c); printf("a!=b produce como resultado %d \n", a!=b); printf("c<=b produce como resultado %d \n", c<=b); printf("a==b produce como resultado %d \n", a==b); printf("a=b produce como resultado %d \n", a=b); printf("a==b produce como resultado %d \n", a==b); }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
booleanos.c
#include<stdio.h> main(){ // Declaracin de variables o int a, b, c; // Inicializacin de variables o a = 2; b = 5; c = -3; printf("a = %d, b = %d y c = %d \n\n", a, b, c); printf("a && b produce como resultado %d \n", a && printf("a && c produce como resultado %d \n", a && printf("a || b produce como resultado %d \n", a || printf("b || c produce como resultado %d \n", b || printf("!c produce como resultado %d \n", !c); } b); c); b); c);
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
prepost.c
#include<stdio.h>
main(){ // Declaracin de variables o int a, b, c, d; // Inicializacin de variables o a = 10; c = 10; //Operador de incremento (pre) b = ++a; printf("a = %d y b = %d \n", a, b); //Operador de incremento (post) d = c++; printf("c = %d y d = %d \n", c, d); }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
<
(menor)
precedencia.c
#include<stdio.h> main(){ // Declaracin de variables o float a, b, c, d, e; // Inicializacin de variables o a = 1.0 + 2.0 * 3.0; b = 6.0 / 3.0 * 2.0; c = 6.0 / ( 3.0 * 2.0 ); d = ! 1 < 4 + 8; e = ! ( 1 < 4 + 8 ); printf("a = %f, b = %f, c = %f, d = %f y e = %f\n", a, b, c , d, e); }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Funciones matemticas a
math.h: biblioteca con las deniciones de las funciones matemticas a Contiene:
Funciones trigonmtricas: cos, sin, tan, etc. e Funciones exponenciales: pow, exp, log, etc. Otras: abs, ceil, floor, etc.
Funcin o sqrt(x) pow(x,y) exp(x) log(x) sin(x) cos(x) tan(x) asin(x) acos(x) atan(x) abs(x) fabs(x) ceil(x) floor(x) Descripcin o Argumentos double double, double double double double double double double double double int double double double Resultado double double double double double double double double double double int double int int
ra cuadrada x z potencia xy exponencial logaritmo natural seno coseno tangente arco seno arco coseno arco tangente valor absoluto de entero valor absoluto de double el mayor entero menor o igual x el menor entero mayor x
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Constantes simblicas o
Identicadores asociados con variables de diversos tipos de datos Se encuentran denidas en math.h
Valor almacenado 2.718281828459045090795598298427648842334747314453 1.442695040888963387004650940070860087871551513672 0.434294481903251816667932416748953983187675476074 0.693147180559945286226763982995180413126945495605 2.302585092994045901093613792909309267997741699219 3.141592653589793115997963468544185161590576171875 1.570796326794896557998981734272092580795288085938 0,785398163397448278999490867136046290397644042969 0.318309886183790691216444201927515678107738494873 0.636619772367581382432888403855031356215476989746 1.128379167095512558560699289955664426088333129883 1.414213562373095145474621858738828450441360473633 1.414213562373095145474621858738828450441360473633
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Ejemplo 4.1 Dado el radio de un c rculo, elabore un programa en C que calcule el area del c rculo. Solucin o
circulo.c
#include<stdio.h> #include<math.h> main(){ // Declaracin de variables o double r, area; printf("Ingrese el radio del crculo: "); scanf("%lf", &r); area = M PI*pow(r,2); // M PI y est definida en math.h a printf("El rea del crculo es %lf \n", area); a }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Ejemplo 5.1
Ejemplo 5.1 (intercambio de variables) Realice un programa en C que lea dos variables numricas A y B y pase el e valor de A a B y de B a A. Solucin o
cambiar.c
#include<stdio.h> main(){ // Declaracin de variables o float A, B, TEMP; printf("Ingrese los valores de A y B respectivamente: "); scanf("%f %f", &A, &B); TEMP = A; A = B; B = TEMP; printf("El valor de A es %f \n", A); printf("El valor de B es %f \n", B); }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Ejemplo 5.2
Ejemplo 5.2 (rea de un tringulo) a a Dado los tres lados de un tringulo cualquiera, realice un programa en C a que obtenga el area del tringulo. a Solucin o
heron.c
#include<stdio.h> #include<math.h> main(){ // Declaracin de variables o double a, b, c, s, area; printf("Ingrese los lados del tringulo: "); a scanf("%lf %lf %lf", &a, &b, &c); // Calcula el rea con la frmula de Heron a o s = (a+b+c)/2; // semipermetro area = sqrt(s*(s-a)*(s-b)*(s-c)); printf("El rea del tringulo es %lf \n", area); a a }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Ejemplo 5.3 (ecuacin cuadrtica) o a Realice un programa en C que encuentre las soluciones reales (si las hay) de la ecuacin cuadrtica o a ax2 + bx + c = 0, con a = 0
Solucin o
cuadratica.c #include<stdio.h> #include<math.h> main(){ // Declaracin de variables o double a, b, c, d, x1, x2; printf("a = "); scanf("%lf", &a); printf("b = "); scanf("%lf", &b); printf("c = "); scanf("%lf", &c); // Calcula las races p d = sqrt(b*b-4*a*c); // d = discriminante = b2 4ac x1 = (-b+d)/(2*a); // x1 = raz 1 x2 = (-b-d)/(2*a); // x2 = raz 2 printf("x1 = %4.8lf \n", x1); printf("x2 = %4.8lf \n", x2); }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Ejemplo 5.4
Ejemplo 5.4 (funciones trigonomtricas) e Realice un programa en C que tenga como entrada la medida de un angulo en grados y obtenga cos , sen y tan . Solucin o
fun trig.c
#include<stdio.h> #include<math.h> main(){ // Declaracin de variables o double alfa, rad, c, s, t; printf("Ingrese angulo en grados: "); scanf("%lf", &alfa); rad c = s = t = = M PI*alfa/180; // pasa de cos(rad); // calcula coseno sin(rad); // calcula coseno tan(rad); // calcula coseno grados a radianes de alfa de alfa de alfa
printf("cos( %lf) = %lf \n", rad, c); printf("sen( %lf) = %lf \n", rad, s); printf("tan( %lf) = %lf \n", rad, t); }
Introduccin o
Principios bsicos a
Variables y tipos
Operadores
Ejemplos
Referencias
M.A. Criado Programacin en lenguajes estructurados o Alfaomega Grupo Editor, S.A. de C.V. Primera Edicin, 2006 o
A.B. Downey How to think like a computer scientist, C ++ version First edition, 1999