Lenguaje C.doc
Transcript of Lenguaje C.doc
-
7/24/2019 Lenguaje C.doc
1/16
Leccin 1Introduccin
Leccin 2Compiladores del lenguaje C
Leccin 3Instalando el compilador
Leccin 4Primer programa en C
Leccin 5Tipos de datos (variables
Leccin !"ostrando datos por pantalla
Leccin #Constantes
Leccin $%peradores aritm&ticos
Leccin '%peradores de comparacin
Leccin 1%peradores lgicos
Leccin 11)jercicio n* 1
Leccin 12+olucin ejercicio n* 1
Leccin 13Introduciendo datos por teclado
Leccin 14+entencia I,
Leccin 15+entencia I,--- )lse
Leccin 1!+entencia +.itc/
Leccin 1#+entencias de salto
Leccin 1$0ucle or
Leccin 1'0ucle /ile
Leccin 20ucle o/ile
Leccin 21)jercicio n* 2
Leccin 22+olucin ejercicio n* 2
Leccin 23unciones librer6as
Leccin 24unciones sin retorno
Leccin 25unciones con retorno
Leccin 2!Punteros
http://www.aulafacil.com/cursos/l16495/informatica/programacion/lenguaje-de-programacion-c/introduccionhttp://www.aulafacil.com/cursos/l16514/informatica/programacion/lenguaje-de-programacion-c/compiladores-del-lenguaje-chttp://www.aulafacil.com/cursos/l16523/informatica/programacion/lenguaje-de-programacion-c/instalando-el-compiladorhttp://www.aulafacil.com/cursos/l16525/informatica/programacion/lenguaje-de-programacion-c/primer-programa-en-chttp://www.aulafacil.com/cursos/l16550/informatica/programacion/lenguaje-de-programacion-c/tipos-de-datos-variableshttp://www.aulafacil.com/cursos/l16551/informatica/programacion/lenguaje-de-programacion-c/mostrando-datos-por-pantallahttp://www.aulafacil.com/cursos/l16562/informatica/programacion/lenguaje-de-programacion-c/constanteshttp://www.aulafacil.com/cursos/l16563/informatica/programacion/lenguaje-de-programacion-c/operadores-aritmeticoshttp://www.aulafacil.com/cursos/l16575/informatica/programacion/lenguaje-de-programacion-c/operadores-de-comparacionhttp://www.aulafacil.com/cursos/l16576/informatica/programacion/lenguaje-de-programacion-c/operadores-logicoshttp://www.aulafacil.com/cursos/l16622/informatica/programacion/lenguaje-de-programacion-c/ejercicio-n-1http://www.aulafacil.com/cursos/l16625/informatica/programacion/lenguaje-de-programacion-c/solucion-ejercicio-n-1http://www.aulafacil.com/cursos/l16653/informatica/programacion/lenguaje-de-programacion-c/introduciendo-datos-por-tecladohttp://www.aulafacil.com/cursos/l16654/informatica/programacion/lenguaje-de-programacion-c/sentencia-ifhttp://www.aulafacil.com/cursos/l16771/informatica/programacion/lenguaje-de-programacion-c/sentencia-if-elsehttp://www.aulafacil.com/cursos/l16772/informatica/programacion/lenguaje-de-programacion-c/sentencia-switchhttp://www.aulafacil.com/cursos/l16781/informatica/programacion/lenguaje-de-programacion-c/sentencias-de-saltohttp://www.aulafacil.com/cursos/l16791/informatica/programacion/lenguaje-de-programacion-c/bucle-forhttp://www.aulafacil.com/cursos/l16802/informatica/programacion/lenguaje-de-programacion-c/bucle-whilehttp://www.aulafacil.com/cursos/l16803/informatica/programacion/lenguaje-de-programacion-c/bucle-do-whilehttp://www.aulafacil.com/cursos/l16822/informatica/programacion/lenguaje-de-programacion-c/ejercicio-n-2http://www.aulafacil.com/cursos/l16827/informatica/programacion/lenguaje-de-programacion-c/solucion-ejercicio-n-2http://www.aulafacil.com/cursos/l16900/informatica/programacion/lenguaje-de-programacion-c/funciones-y-libreriashttp://www.aulafacil.com/cursos/l16901/informatica/programacion/lenguaje-de-programacion-c/funciones-sin-retornohttp://www.aulafacil.com/cursos/l16966/informatica/programacion/lenguaje-de-programacion-c/funciones-con-retornohttp://www.aulafacil.com/cursos/l16968/informatica/programacion/lenguaje-de-programacion-c/punteroshttp://www.aulafacil.com/cursos/l16514/informatica/programacion/lenguaje-de-programacion-c/compiladores-del-lenguaje-chttp://www.aulafacil.com/cursos/l16523/informatica/programacion/lenguaje-de-programacion-c/instalando-el-compiladorhttp://www.aulafacil.com/cursos/l16525/informatica/programacion/lenguaje-de-programacion-c/primer-programa-en-chttp://www.aulafacil.com/cursos/l16550/informatica/programacion/lenguaje-de-programacion-c/tipos-de-datos-variableshttp://www.aulafacil.com/cursos/l16551/informatica/programacion/lenguaje-de-programacion-c/mostrando-datos-por-pantallahttp://www.aulafacil.com/cursos/l16562/informatica/programacion/lenguaje-de-programacion-c/constanteshttp://www.aulafacil.com/cursos/l16563/informatica/programacion/lenguaje-de-programacion-c/operadores-aritmeticoshttp://www.aulafacil.com/cursos/l16575/informatica/programacion/lenguaje-de-programacion-c/operadores-de-comparacionhttp://www.aulafacil.com/cursos/l16576/informatica/programacion/lenguaje-de-programacion-c/operadores-logicoshttp://www.aulafacil.com/cursos/l16622/informatica/programacion/lenguaje-de-programacion-c/ejercicio-n-1http://www.aulafacil.com/cursos/l16625/informatica/programacion/lenguaje-de-programacion-c/solucion-ejercicio-n-1http://www.aulafacil.com/cursos/l16653/informatica/programacion/lenguaje-de-programacion-c/introduciendo-datos-por-tecladohttp://www.aulafacil.com/cursos/l16654/informatica/programacion/lenguaje-de-programacion-c/sentencia-ifhttp://www.aulafacil.com/cursos/l16771/informatica/programacion/lenguaje-de-programacion-c/sentencia-if-elsehttp://www.aulafacil.com/cursos/l16772/informatica/programacion/lenguaje-de-programacion-c/sentencia-switchhttp://www.aulafacil.com/cursos/l16781/informatica/programacion/lenguaje-de-programacion-c/sentencias-de-saltohttp://www.aulafacil.com/cursos/l16791/informatica/programacion/lenguaje-de-programacion-c/bucle-forhttp://www.aulafacil.com/cursos/l16802/informatica/programacion/lenguaje-de-programacion-c/bucle-whilehttp://www.aulafacil.com/cursos/l16803/informatica/programacion/lenguaje-de-programacion-c/bucle-do-whilehttp://www.aulafacil.com/cursos/l16822/informatica/programacion/lenguaje-de-programacion-c/ejercicio-n-2http://www.aulafacil.com/cursos/l16827/informatica/programacion/lenguaje-de-programacion-c/solucion-ejercicio-n-2http://www.aulafacil.com/cursos/l16900/informatica/programacion/lenguaje-de-programacion-c/funciones-y-libreriashttp://www.aulafacil.com/cursos/l16901/informatica/programacion/lenguaje-de-programacion-c/funciones-sin-retornohttp://www.aulafacil.com/cursos/l16966/informatica/programacion/lenguaje-de-programacion-c/funciones-con-retornohttp://www.aulafacil.com/cursos/l16968/informatica/programacion/lenguaje-de-programacion-c/punteroshttp://www.aulafacil.com/cursos/l16495/informatica/programacion/lenguaje-de-programacion-c/introduccion -
7/24/2019 Lenguaje C.doc
2/16
Leccin 2#7so de punteros
Leccin 2$8rras
Leccin 2'Iniciali9ar un 8rra
Leccin 3:ecorrer un 8rra
Leccin 31)jercicio n* 3
Leccin 32+olucin ejercicio n* 3
Leccin 33Cadena de caracteres (+trings
Leccin 34unciones +trcp +trcat
Leccin 35uncin +trcmp
Leccin 3!e,iniendo estructuras
Leccin 3#Iniciali9ar estructuras
Leccin 3$Introducir leer datos de la estructura
Leccin 3')jercicio ,inal
Leccin 4+olucin ejercicio ,inal
Leccin 41:ecomendaciones inales
Introduccin
Oir Lecc.
)l lenguaje de programacin C; ,ue creado porDennis Ritchieen el a
-
7/24/2019 Lenguaje C.doc
3/16
La maor6a de programadores /an empe9ado por aprender con este lenguaje; a ?ue es
de los m=s vers=tiles e importantes- Casi cual?uier programa ?ue se nos ocurra es mu
posible ?ue tenga l6neas de cdigo en C- )s mu utili9ado para todo-
BListos para aprender
Compiladores del lenguaje C
Oir Lecc.
0ien; lo primero ?ue tenemos ?ue /acer para crear nuestros propios programas en C estener un compilador para este lenguajeD ser= una /erramienta ?ue se encargar= de
ejecutar el cdigo C en un programa ejecutable; entendible por el ordenador-
Como podr&is imaginar /a una amplia variedad de compiladores; algunos gratuitos;
otros de pago; etc--- )videntemente; en este curso vamos a utili9ar un compilador
gratuito ?ue adem=s es de los m=s reconocidos para C-
Aa muc/os compiladores--- por ejemplo; Turbo CEE; FGPP; 0orland CEE; etc---
http://www.aulafacil.com/cursos/l16514/informatica/programacion/lenguaje-de-programacion-c/compiladores-del-lenguaje-chttp://www.aulafacil.com/cursos/l16514/informatica/programacion/lenguaje-de-programacion-c/compiladores-del-lenguaje-c -
7/24/2019 Lenguaje C.doc
4/16
Puedes utili9ar cual?uier compilador; pero recomendamos ?ue si est=s empe9ando
utilices el mismo ?ue vo a utili9ar durante el curso; as6 no te perder=s-
)l compilador ?ue vamos a utili9ar en este curso se llama ev CEE-
Clicando a?u6lo puedes descargar completamente gratis-
)sta es la Hnica /erramienta ?ue necesitaremos para aprender a programar en C- )n la
siguiente leccin instalaremos el compilador en nuestro ordenador-
Instalando el compilador
Oir Lecc.
amos a ponernos manos a la obra con la instalacin del compilador- Partimos de la
base de ?ue a /emos descargado el arc/ivo en la leccin anterior; a/ora vamos con la
instalacin- )s mu sencillo; puesto ?ue apenas /a ?ue modi,icar cosas-
1J oble clicK al arc/ivo descargado
http://sourceforge.net/projects/dev-cpp/files/Binaries/Dev-C%2B%2B%204.9.9.2/devcpp-4.9.9.2_setup.exe/download?use_mirror=optimatehttp://www.aulafacil.com/cursos/l16523/informatica/programacion/lenguaje-de-programacion-c/instalando-el-compiladorhttp://sourceforge.net/projects/dev-cpp/files/Binaries/Dev-C%2B%2B%204.9.9.2/devcpp-4.9.9.2_setup.exe/download?use_mirror=optimatehttp://www.aulafacil.com/cursos/l16523/informatica/programacion/lenguaje-de-programacion-c/instalando-el-compilador -
7/24/2019 Lenguaje C.doc
5/16
2J Mos aparece la siguiente ventana; en la cual seleccionaremos nuestro idioma
despu&s clicK en @%N@-
3J )n la siguiente ventana simplemente aceptamos la licencia del programa-
4J )n esta dejamos todo tal cual clicK en @+iguiente@-
-
7/24/2019 Lenguaje C.doc
6/16
5J 8/ora seleccionamos la ruta en la ?ue ?ueremos ?ue se instale nuestro compilador
(es pre,erible dejarlo tal cual est=-
!J +e comen9ar= a instalar el compilador--- casi cuando est& acabando; nos aparecer=
una ventana para indicar si ?ueremos ?ue se instale para todos los usuarios delordenador; clicK en @+i@ o @Mo@; depende lo ?ue ?uieras-
-
7/24/2019 Lenguaje C.doc
7/16
#J Oa est=; /acemos clicK en @Terminar@ en la siguiente ventana a se nos abrir= el
compilador; si /emos dejado tildada la casilla de @)jecutar evCEE@-
-
7/24/2019 Lenguaje C.doc
8/16
)sto es todo; a tenemos el compilador de C instalado en nuestro ordenador- Tiene ?ue
verse as6
Por si algo no /a ?uedado del todo claro; a/ora adjunto un v6deo donde se ve mejor el
proceso ?ue /a ?ue llevar a cabo para la instalacin del compilador
Primer programa en C
http://www.aulafacil.com/cursos/l16525/informatica/programacion/lenguaje-de-programacion-c/primer-programa-en-chttp://www.aulafacil.com/cursos/l16525/informatica/programacion/lenguaje-de-programacion-c/primer-programa-en-c -
7/24/2019 Lenguaje C.doc
9/16
Oir Lecc.
7na ve9 instalado el compilador podemos empe9ar a meternos en la pr=ctica; ?ue es
como realmente se aprende a programar programando-
Mo te preocupes si al principio te cuesta captar los conceptos b=sicos de la
programacin o si /a l6neas de cdigo ?ue no entiendes; es normal; al empe9ar vas a
ver ciertas cosas ?ue no se pueden e>plicar en este momento ?ue no sabes nada; por?ue
son conceptos ?ue se aprender=n posteriormente en el curso- 8s6 ?ue por eso no te
preocupes-
Como a /emos aclarado; C es un lenguaje estructurado ?ue se escribe por instrucciones
de programacin; cada instruccin acabar= con un @D@ al ,inal; ?ue indica el ,inal de la
instruccin ?ue pasar= a ejecutarse la siguiente-
eamos cmo ?ueda nuestro primer programa
Lo Hnico ?ue /ace este programa es mostrar la ,rase @Aola "undo@ en la consola de
nuestro indo.s-
Para ejecutar nuestro programa pulsamos la tecla F9 o bien vamos al
Men ejecutar > compilar ejecutar.
Primero ?uiero dejar claro ?ue las ,rases ?ue llevan antes @@ son cosas ?ue el
compilador no ejecuta- )sto se llama comentarios; nos sirven para ?ue nosotros
mismos; los programadores; sepamos ?ue /ace cada instruccin- )n este tipo de
programas no; pero imaginad un programa de m=s de 3 l6neas de cdigoD &ste tendr6a
?ue tener comentarios aclaratorios para ?ue no se convierta en un caos-
0ien; empe9amos a anali9ar el cdigo (a os digo ?ue no tem=is si no entend&is cosas
a/ora; es completamente normal; a todos nos /a pasado-
#include
-
7/24/2019 Lenguaje C.doc
10/16
#include
)stos @includes@ /acen re,erencia a librer6as- Las librer6as las veremos m=s adelante;
por lo ?ue a entender&is por ?u& est=n a/6- e momento ponedlas sin m=s; por?ue son
necesarias para ?ue ,uncione el programa-
int main()
{
...
}
)sto es la ,uncin @main@; es decir; la ,uncin principal del programa- Todo lo ?ue est&
dentro de Q --- R del main es lo ?ue se va a ejecutar cuando ejecutemos el programa- Por
eso; todo programa debe llevar su @main@-
printf("Hola Mundo. \n");
print, es una ,uncin ?ue nos permite escribir por pantalla- )scribiremos entrepar&ntesis comillas como veis; la ,rase a mostrar; el programa la mostrar=- 8claro
?ue el @Sn@ es e?uivalente a un salto de l6nea en la consola de indo.s-
sstem("!$%");
O esta instruccin dejar= en pausa a la consola de indo.s /asta ?ue pulsemos una
tecla para ?ue se cierre- Comprobad si ?uer&is ?ue si ?uit=is el @pause@; la consola se
cerrar= nada m=s ejecutar el programa; por lo ?ue no podremos ver el contenido de
nuestro programa-
8djunto el arc/ivo del cdigo ,uente PrimerPrograma-cpp
!O"#$ %uarda los arc&ivos de los cdigos 'uente en una carpeta (ue
tengas bien locali)ada. *ecuerda (ue los arc&ivos de programas en C
tienen la e+tensin ,cpp,.
Para aclarar un poco mejor todo; vamos a ver un v6deo donde se reali9an diversos
cambios en el cdigo para ?ue se aprecien esos cambios en el programa-
"ipos de datos -variables
http://www.aulafacil.com/uploads/cursos/1537/editor/primerprograma.cpphttp://www.aulafacil.com/cursos/l16550/informatica/programacion/lenguaje-de-programacion-c/tipos-de-datos-variableshttp://www.aulafacil.com/uploads/cursos/1537/editor/primerprograma.cpphttp://www.aulafacil.com/cursos/l16550/informatica/programacion/lenguaje-de-programacion-c/tipos-de-datos-variables -
7/24/2019 Lenguaje C.doc
11/16
Oir Lecc.
Los tipos de datos; la in,ormacin ?ue manipularemos en C; ser=n variables- )stas
variables pueden ser de di,erentes tipos- amos a ver las m=s comunes- Aa ?ue decir
?ue generalmente en todos los lenguajes de programacin son los mismos tipos o muparecidos-
)mpe9amos con los datos num&ricos; ?ue pueden ser
JTipo entero (int estas variables contienen datos num&ricos enteros-
JTipo 'loat son datos num&ricos con decimales-
JTipo double tambi&n contienen datos num&ricos con decimales; pero a di,erencia del
,loat; estas variables son de m=s tama /nombre0variable> 1 /valor>
)sa es la estructura a seguir; en C ?uedar6an as6 algunos ejemplos
int num #D
c/ar caracter UbU
Tiene ?ue ?uedar mu claro ?ue si en el programa ?ueremos almacenar un nHmero tipo
int; dic/a variable tiene ?ue ser tipo int; no puede ser tipo c/ar o double- C es muin,le>ible en eso; los datos tienen ?ue estar claramente distinguidos-
Por ejemplo;&'podemos /acer lo siguiente
int num 1-'5D
Mos dar= error; por?ue el valor es un nHmero con decimales; por lo ?ue tendremos ?ue
utili9ar un double o ,loat-
-
7/24/2019 Lenguaje C.doc
12/16
Por Hltimo un tipo de dato di,erente; dato bool; ?ue puede tomar solo dos valores @true@
o @,alse@; es decir; verdadero o ,also-
Mo os preocup&is ?ue todo esto se va a poner en pr=ctica en la siguiente leccin; donde
enter&is mejor el uso de las variables-
-
7/24/2019 Lenguaje C.doc
13/16
Mostrando datos por pantalla
Oir Lecc.
amos a aprender a/ora a crear variables; darles valor mostrar ese valor por pantalla-e esta ,orma sabemos ?u& valor contiene cada variable-
Aaremos un programa mu simple en el ?ue crearemos 2 variables de di,erente tipo; le
asignaremos un valor lo mostraremos por pantalla-
)l cdigo es el siguiente
:ecordad los comentarios ?ue vo poniendo en el cdigo; son mu Htiles para ?ue
sep=is ?u& est= reali9ando cada instruccin del programa-
Cabe decir ?ue la creacin asignacin de las variables se pueden /acer en una sola
l6nea tambi&n; eso lo pod&is /acer como ?uer=is- )n este caso; lo /ice aparte para ?ue se
vea un poco m=s claro; pero tambi&n se puede /acer lo siguiente
int num 1D
)s lo mismo- )l programa ,uncionar= igualmente-
Lo novedoso de esta leccin es la muestra por pantalla de valores ?ue /emos dado a
nuestras variables; esto se /ace a trav&s del print,; como se ve en el cdigo- )sto,unciona de la siguiente manera
http://www.aulafacil.com/cursos/l16551/informatica/programacion/lenguaje-de-programacion-c/mostrando-datos-por-pantallahttp://www.aulafacil.com/cursos/l16551/informatica/programacion/lenguaje-de-programacion-c/mostrando-datos-por-pantalla -
7/24/2019 Lenguaje C.doc
14/16
print'-,/te+to0a0mostrar>,2 /variables0a0mostrar>
)ntre comillas se escribe el te>to ?ue se mostrar=; cuando se ?uiera mostrar una
variable se /ace con el @V@- La letra ?ue lleva detr=s cambiar= dependiendo del tipo dedato ?ue utilicemos- )n la siguiente tabla ver&is las letras para cada tipo
int JW Vi
c/ar JW Vc
,loat JW V,
double JW V,
Para los dos Hltimos se utili9a el mismo-
0ueno; retomando la muestra de los valores; una ve9 /aamos escrito el te>to entre las
comillas luego vendr= una @;@ para separar; a continuacin el nombre de la variable a
mostrar--- como pod&is apreciar en el cdigo-
eb&is saber ?ue se pueden mostrar ambas variables en un solo @print,@; todo es saber
manejar la sinta>is del print,; en el video pod&is comprobar cmo /acerlo-
8?u6 dejo el cdigo ,uente para ?ue practi?u&is; /aciendo cambios probando cosas;
como por ejemplo modi,icar los valores de las variables o crear otras variables
mostrarlas en un solo print,
Descargar datosporpantalla.cpp
http://www.aulafacil.com/uploads/cursos/1537/editor/datosporpantalla.cpphttp://www.aulafacil.com/uploads/cursos/1537/editor/datosporpantalla.cpp -
7/24/2019 Lenguaje C.doc
15/16
Constantes
Oir Lecc.
eremos a/ora un tipo de variables ?ue son especiales; por eso no las /e metido en laleccin de tipos de datos- )stas variables pueden ser de cual?uier tipo; pero con la
caracter6stica ?ue tendr=n un valor constante; como su propio nombre indica-
Tenemos ?ue tener claro ?ue este valor no se va a poder modi,icar en todo el programa-
Las constantes son mu Htiles por ejemplo para valores como PI-
amos a ver un ejemplo
Como veis; las constantes se de,inen en la parte superior; debajo de los @includes@- La
estructura es la siguiente
3de'ine /nombre0constante> /valor0constante>
+e escribe as6 todo directamente; no /ace ,alta utili9ar @@ para asignar el valor a la
constante-
)ste sencillo programa lo ?ue /ace es multiplicar 3 por PI mostrarlo por pantalla-
)n el video comprobaremos ?ue no se puede cambiar el valor de la constante; tambi&n
se ver= una ,orma m=s corta de reali9ar el ejercicio; ?ue es mostrando directamente en el
@print,@ el valor de 3 por PI; de ,orma ?ue nos podemos saltar la asignacin del
resultado a la variable @num@; incluso podemos obviar la creacin de la variable
@num@--- /acerlo todo directamente; de esta ,orma
print'- ,4l resultado es$ 5' 6n,2 7 8 PI
http://www.aulafacil.com/cursos/l16562/informatica/programacion/lenguaje-de-programacion-c/constanteshttp://www.aulafacil.com/cursos/l16562/informatica/programacion/lenguaje-de-programacion-c/constantes -
7/24/2019 Lenguaje C.doc
16/16
:ecordad ?ue a/ora; al ser un nHmero con decimales; utili9amos el @V,@ para mostrarlo-
Cdigo ,uente escargar Constantes-cpp
http://www.aulafacil.com/uploads/cursos/1537/editor/constantes.cpphttp://www.aulafacil.com/uploads/cursos/1537/editor/constantes.cpp