SlideShare una empresa de Scribd logo
MANUAL
PROGRAMACIÓN C/C++
Abigail Saballos
LABORATORIO
PROGRAMACIÓN I
Tabla de contenido
1. Tipos de datos.................................................................................................................... 1
1.1 Numéricos enteros..................................................................................................... 1
1.2 Numéricos reales........................................................................................................ 2
1.3 Lógico........................................................................................................................ 2
2. Juego de caracteres............................................................................................................ 3
3. Declaración de variables..................................................................................................... 4
4. Entradas y Salidas .............................................................................................................. 5
4.1 Entrada y Salida C....................................................................................................... 5
4.1.1 fflush, getchar y putchar...................................................................................... 6
4.1.2 printf y scanf....................................................................................................... 8
4.2 Entrada y Salida C++ ..................................................................................................11
............................................................................................................................................11
3. Keywords..........................................................................................................................13
4. Funciones.........................................................................................................................14
4.1 sizeof........................................................................................................................14
5. Tipos de Datos y Requerimientos de Memoria....................................................................15
6. Tratamiento de los tipos por el compilador de C/C++..........................................................16
7. Casting.............................................................................................................................19
8. Arreglos........................................................................................................................20
8.1 Concepto..................................................................................................................20
8.2 Sintaxis .....................................................................................................................20
9. Estructuras .......................................................................................................................22
10. Ficheros........................................................................................................................25
10.1 fopen y fclose............................................................................................................25
10.2 Rename ....................................................................................................................29
10.3 Remove ....................................................................................................................30
10.4 fgetc.........................................................................................................................31
............................................................................................................................................31
10.5 fgets.........................................................................................................................31
10.6 fread.........................................................................................................................32
10.7 fscanf........................................................................................................................32
10.8 fwrite........................................................................................................................33
10.9 ftell...........................................................................................................................33
11. Sentencias de control ....................................................................................................34
11.1 if...............................................................................................................................34
11.2 if else........................................................................................................................34
11.3 while.........................................................................................................................34
11.4 for............................................................................................................................35
11.5 do while....................................................................................................................35
12. Funciones .....................................................................................................................38
12.1 Parámetros...................................................................................................................38
12.1.1 Parámetro por Valor...............................................................................................38
12.1.2 Parámetro por Referencia.......................................................................................38
12.2 Función Void.................................................................................................................38
1
1. Tipos de datos
1.1Numéricos enteros
Tipo de
Dato
Descripción Número de
bytes
Rango
short Entero corto 2 -32768 a 32767
int Entero 4 -2147483648
a +2147483647
long Entero largo 4 -2147483648
a +2147483647
char Carácter 1 -128 a 127
Tipo de Dato Descripción Número
de bytes
Rango
signed short Entero corto 2 -32768 a 32767
unsigned
short
Entero corto sin
signo
2 0 a 65535
signed int Entero 4 -2147483648 a +2147483647
unsigned int Entero sin signo 4 0 a 4294967295
signed long Entero largo 4 -2147483648 a +2147483647
unsigned
long
Entero largo sin
signo
4 0 a 4294967295
signed char Carácter 1 -128 a 127
unsigned
char
Carácter sin signo 1 0 a 255
2
1.2Numéricos reales.
Tipo de Dato Descripción Número
de bytes
Rango
float Real (Número en
coma flotante)
4 Positivos: 3.4E-38 a
3.4E38
Negativos: -3.4E-38 a -
3.4E38
double Real
doble(Número en
coma flotante de
doble precisión)
8 Positivos: 1.7E-308 a
1.7E308
Negativos: -1.7E-308 a -
1.7E308
long double Real doble largo 10 Positivos: 3.4E-4932 a
1.1E4932
Negativos: -3.4E-4932 a
-1.1E4932
1.3Lógico
Tipo
de
Dato
Descripción Número
de bytes
Rango
bool Dato de tipo lógico 1 0, 1
3
2. Juego de caracteres
El juego básico de caracteres de código fuente consta de 96 caracteres que
pueden usarse en archivos de código fuente. Este conjunto incluye el carácter de
espacio, tabulación horizontal, tabulación vertical, avance de página y caracteres
de control de nueva línea, además del siguiente conjunto de caracteres gráficos:
a b c d e f g h i j k l m n o p q r s t u v w x y z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
0 1 2 3 4 5 6 7 8 9
_ { } [ ] # ( ) < > % : ; . ? * + - / ^ & | ~ ! = ,  " '
4
3. Declaración de variables
Tipo de variable, nombre de la variable e inicialización.
5
4. Entradas y Salidas
4.1 Entrada y Salida C
Se utiliza printf para mostrar un mensaje.
6
4.1.1 fflush, getchar y putchar
Se declara “x” y se muestra un mensaje con puts. Se limpia el buffer y a través
del getchar se almacena el carácter ingresado por el usuario en la variable “x”.
El putchar permite que se muestre el valor del carácter en la salida.
7
8
4.1.2 printf y scanf
Si se deseaintroducirunnúmerose debe usar“%d”y como
reglageneral el &antesde lavariable enel caso del scanf.
9
Si se deseaintroducirun caracterse debe usar“%c” y como
reglageneral el &antesde lavariable enel caso del scanf.
10
Si se deseaintroducirunacadenase debe usar“%s” y como
reglageneral el &antesde lavariable enel caso del scanf.
11
4.2Entrada y Salida C++
12
Se utiliza cout para imprimir un mensaje y cin para la lectura de datos.
13
3. Keywords
Las palabras claves son identificadores reservados predefinidos que tienen
significados especiales. Es decir, que no pueden ser utilizados como
identificadores en tu programa.
14
4. Funciones
4.1sizeof
Determina el tamaño en bytes de una variable o tipo de dato.
15
5. Tipos de Datos y Requerimientos de Memoria
Nº Instrucciones Resultado y Observaciones
1 Escriba el siguiente fragmento de código,
compile y ejecute:
int cantidad;
cantidad=100;
cout<<”valor: “<<cantidad<<endl;
cout<<”tamaño: “<<sizeof(cantidad)<<endl;
Aparece el valorque se le asignóa la variable
“cantidad”y el tamaño (4 bytes) del tipode
dato (entero) de lavariable “cantidad”.
2 Asigne a la variable cantidad el valor
1234567890 e imprima nuevamente la
cantidad de bytes que requiere.
Aparece nuevamente que el tamaño
requeridoporlavariable cantidad,cuyotipo
de dato esenteroesde 4 bytes.
3 Escriba el siguiente fragmento de código,
compile y ejecute:
float medida;
medida=20.2536;
cout<<”valor: “<<medida<<endl;
cout<<”tamaño: “<<sizeof(medida)<<endl;
Aparece el valorque se le asignóa la variable
“medida”yel tamaño (4 bytes) del tipode
dato (real) de lavariable “medida”.
4 Escriba el siguiente fragmento de código,
compile y ejecute:
char zona;
zona=’X’;
cout<<”valor: “<<zona<<endl;
cout<<”tamaño: “<<sizeof(zona)<<endl;
Aparece el valorque se le asignóa la variable
“zona” y el tamaño(1 byte) del tipode dato
(real) de lavariable “zona”.
5 Escriba el siguiente fragmento de código,
compile y ejecute:
char ciudad[25];
ciudad=”Managua”;
cout<<”valor: “<<ciudad<<endl;
cout<<”tamaño: “<<sizeof(ciudad)<<endl;
Aparece error“Asignacióndel arreglo
inválida”debidoaque se debe inicializarla
variable cuandoestase declaraenel caso de
que se esté trabajandocon dimensiones.
6 Escriba el siguiente fragmento de código,
compile y ejecute:
double temperatura;
temperatura=25.123456789;
cout<<”valor: “<<temperatura<<endl;
cout<<”tamaño:
“<<sizeof(temperatura)<<endl;
Aparece el valorque se le asignóa la variable
“temperatura”yel tamaño (8 bytes) del tipo
de dato (doble) de lavariable “temperatura”.
7 Escriba el siguiente fragmento de código,
compile y ejecute:
bool estado;
estado=false;
cout<<”valor: “<<estado<<endl;
cout<<”tamaño: “<<sizeof(estado)<<endl;
Aparece el valorde la variable “estado”(0) y
el tamaño(1 byte) del tipode dato(lógico)
de la variable “estado”.
16
6. Tratamiento de los tipos por el compilador de C/C++
Nº Instrucciones Resultado y Observaciones
1 Escriba el siguiente fragmento de código, compile y
ejecute:
int cantidad;
cantidad=100;
cout<<”valor: “<<cantidad<<endl;
Se muestrael valorde lavariable
“cantidad”,eneste caso 100.
2 Modifique el valor asignado a la variable, compile y
ejecute
cantidad=25.8945;
cout<<”valor: “<<cantidad<<endl;
Se muestrael valorde cantidad
peroredondeado,esdecirnose
muestrala cifra completa.
3 Modifique el valor asignado a la variable, compile y
ejecute
cantidad=’F’;
cout<<”valor: “<<cantidad<<endl;
Se muestraun valordistinto al
asignado,eneste caso“70”.
4 Modifique el valor asignado a la variable, compile y
ejecute
cantidad=”Completa”;
cout<<”valor: “<<cantidad<<endl;
Aparece que existe un“error:
conversióninválidoal de constchar
a int”. Es decir,ladeclaración
correcta sería un const char.
5 Modifique el valor asignado a la variable, compile y
ejecute
cantidad=True;
cout<<”valor: “<<cantidad<<endl;
Se muestrael valorcomo “1”.
6 Escriba el siguiente fragmento de código, compile y
ejecute:
float medida;
medida=20.2536;
cout<<”valor: “<<medida<<endl;
Se muestrael valorde lavariable
“cantidad”,eneste caso 20.2536.
7 Modifique el valor asignado a la variable, compile y
ejecute
medida=85;
cout<<”valor: “<<medida <<endl;
Se muestrael valorasignadoa la
variable,eneste caso“85”.
8 Modifique el valor asignado a la variable, compile y
ejecute
medida=’P’;
cout<<”valor: “<<medida <<endl;
Se muestraun valordistintoal
asignado,eneste caso“80”.
9 Modifique el valor asignado a la variable, compile y
ejecute
medida=”Corta”;
cout<<”valor: “<<medida <<endl;
Aparece que existe un“error:
conversióninválidoal de constchar
a float”.Es decir,la declaración
correcta sería un constchar.
10 Modifique el valor asignado a la variable, compile y
ejecute
medida=True;
cout<<”valor: “<<medida <<endl;
Se muestrael valorcomo “1”.
11 Escriba el siguiente fragmento de código, compile y
ejecute:
char zona;
zona=’X’;
cout<<”valor: “<<zona<<endl;
Se muestrael valorasignadoa la
variable,eneste caso‘X’.
17
Nº Instrucciones Resultado y Observaciones
12 Modifique el valor asignado a la variable, compile y
ejecute
zona=65;
cout<<”valor: “<<zona<<endl;
Se muestraun valordistintoal
asignado,eneste caso“A”.
13 Modifique el valor asignado a la variable, compile y
ejecute
zona=95.56;
cout<<”valor: “<<zona<<endl;
Se muestraun valordistintoal
asignado,eneste caso“_”.
14 Modifique el valor asignado a la variable, compile y
ejecute
zona=”Central”;
cout<<”valor: “<<zona<<endl;
Aparece que existe un“error:
conversióninválidoal de constchar
a char”. Es decir,ladeclaración
correcta sería un constchar.
15 Modifique el valor asignado a la variable, compile y
ejecute
zona=False;
cout<<”valor: “<<zona<<endl;
No se muestraningúnvalor.
16 Escriba el siguiente fragmento de código, compile y
ejecute:
ciudad=”Managua”;
cout<<”valor: “<<ciudad<<endl;
Aparece que lavariable “ciudad”no
fue declarada.
17 Modifique el valor asignado a la variable, compile y
ejecute
ciudad=25;
cout<<”valor: “<<ciudad<<endl;
Aparece que lavariable “ciudad”no
fue declarada.
18 Modifique el valor asignado a la variable, compile y
ejecute
ciudad=100.50;
cout<<”valor: “<<ciudad<<endl;
Aparece que lavariable “ciudad”no
fue declarada.
19 Modifique el valor asignado a la variable, compile y
ejecute
ciudad=’C’;
cout<<”valor: “<<ciudad<<endl;
Aparece que lavariable “ciudad”no
fue declarada.
20 Modifique el valor asignado a la variable, compile y
ejecute
ciudad=False;
cout<<”valor: “<<ciudad<<endl;
Aparece que lavariable “ciudad”no
fue declarada.
21 Escriba el siguiente fragmento de código, compile y
ejecute:
double temperatura;
temperatura=25.123456789;
cout<<”valor: “<<temperatura<<endl;
Se muestrael valorde cantidad
peroredondeado,esdecirnose
muestrala cifra completa.En este
caso “25.1235”.
22 Modifique el valor asignado a la variable, compile y
ejecute
temperatura=30;
cout<<”valor: “<<temperatura<<endl;
Se muestrael valorasignadoa la
variable,eneste caso“30”.
23 Modifique el valor asignado a la variable, compile y
ejecute
temperatura=’T’;
cout<<”valor: “<<temperatura<<endl;
Se muestraun valordistintoal
asignado,eneste caso“84”.
18
Nº Instrucciones Resultado y Observaciones
24 Modifique el valor asignado a la variable, compile y
ejecute
temperatura=”Caliente”;
cout<<”valor: “<<temperatura<<endl;
Aparece que existe un“error:
conversióninválidoal de constchar
a double”.Esdecir,la declaración
correcta sería un constchar.
25 Modifique el valor asignado a la variable, compile y
ejecute
temperatura=True;
cout<<”valor: “<<temperatura<<endl;
Se muestrael valorcomo “1”.
26 Escriba el siguiente fragmento de código, compile y
ejecute:
bool estado;
estado=false;
cout<<”valor: “<<estado<<endl;
Se muestrael valorcomo “0”.
27 Modifique el valor asignado a la variable, compile y
ejecute
estado=100;
cout<<”valor: “<<estado<<endl;
Se muestrael valorcomo “1” y no
cómo “100”, los0 son eliminados
enla salida.
28 Modifique el valor asignado a la variable, compile y
ejecute
estado=500.85;
cout<<”valor: “<<estado<<endl;
Se muestrael valorcomo “1” y no
cómo “500.85”.
29 Modifique el valor asignado a la variable, compile y
ejecute
estado=’E’;
cout<<”valor: “<<estado<<endl;
Se muestrael valorcomo “1”.
30 Modifique el valor asignado a la variable, compile y
ejecute
estado=”Aceptado”;
cout<<”valor: “<<estado<<endl;
Aparece que existe un“error:
conversióninválidoal de constchar
a bool”.Es decir,la declaración
correcta sería un constchar.
19
7. Casting
20
8. Arreglos
8.1Concepto
Los arrays permiten agrupar datos usando un único identificador. Todos los
elementos de un array son del mismo tipo, y para acceder a cada elemento se usan
índices.
8.2 Sintaxis
<tipo> <identificador>[número de elementos];
21
22
9. Estructuras
Al contrario que los arrays, las estructuras le permiten agrupar varios datos,
que mantengan algún tipo de relación, aunque sean de distinto tipo,
permitiendo manipularlos todos juntos, usando un mismo identificador, o
cada uno por separado.
Las estructuras son llamadas también muy a menudo registros, o en
inglés records. Tienen muchos aspectos en común con los registros usados
en bases de datos. Y siguiendo la misma analogía, cada objeto de una
estructura se denomina a menudo campo, o field.
Sintaxis:
struct [<identificador>]{
[<tipo> <nombre_objeto>[nombre_objeto]];
}<objeto_estructura>[<objeto_estructura>,…];
23
24
25
10. Ficheros
10.1fopen y fclose
El fopenabre el documentocuyonombre esespecificadoenel parámetro yel fclose cierrael
documento.
"r"
Lectura: Abre el archive para operaciones de entrada. El archive debe
existir.
"w"
Escritura: Crea un archivo vacío para operaciones de salida. Si el archivo
con el mismo nombre ya existe, su contenido es borrado y el archivo es
tratado como un archivo nuevo vacío. Es decir, se sobrescribe.
"a"
Añadir: Abre un documento para la salida al final de un documento. Las
operaciones de salida siempre escriben datos al final del documento,
expandiéndolo. El documento es creado si no existe.
"r+"
Lectura/actualización: Abre un documento para actualización (ambos para
entrada y salida). El documento debe existir.
"w+"
Escritura/actualización: Crea un archivo vacío y lo abre para actualización
(ambos para entrada y salida). Si el archivo con el mismo nombre ya existe,
su contenido es borrado y el archivo es tratado como un archivo nuevo
vacío. Es decir, se sobrescribe.
"a+"
Añadir/actualización: Abre un archivo para actualización (ambos para
entrada y salida. El archivo es creado si no existe.
26
Se crea el archivode formaexitosayse guardan 3 caracteresenel archivo.
27
Se crea el archivoy se guarda laletracon “fputc”.
28
29
10.2Rename
Se asignacomo nuevonombre de archivoa “new”.
30
10.3 Remove
Se eliminael archivoque se renombróanteriormente.
31
10.4 fgetc
Esta funciónlee uncarácter a la vezdel archivoque estásiendoseñaladoconel puntero*archivo.
En caso de que lalecturasea exitosadevuelve el carácterleídoyencaso de que no lo seao de
encontrarel final del archivodevuelveEOF.
10.5 fgets
Esta funciónestádiseñadaparaleercadenasde caracteres.Leeráhasta n-1caracteres o hasta que
leaun cambiode línea'n' o un final de archivoEOF. En este últimocaso,el carácterde cambiode
línea'n' tambiénesleído.
32
10.6 fread
Esta función lee un bloque de una "stream" de datos. Efectúa la lectura de un arreglo de
elementos "count", cada uno de los cuales tiene un tamaño definido por "size". Luego los
guarda en el bloque de memoria especificado por "ptr". El indicador de posición de la
cadena de caracteres avanza hasta leer la totalidad de bytes. Si esto es exitoso la cantidad
de bytes leídos es (size*count).
10.7 fscanf
La función fscanf funciona igual que scanf en cuanto a parámetros, pero la entrada se toma
de un fichero en lugar del teclado.
El prototipo correspondiente de fscanf es:
int fscanf(FILE *fichero, const char *formato, argumento, ...);
33
10.8fwrite
Esta funciónestápensadaparatrabajar con registrosde longitudconstante yformaparejacon
fread.Es capaz de escribirhaciaun ficherounoo variosregistrosde lamismalongitud
almacenadosapartir de una direcciónde memoriadeterminada.El valorde retornoesel número
de registrosescritos,noel númerode bytes.Los parámetrosson:un punteroala zona de
memoriade donde se obtendránlosdatosa escribir,el tamañode cada registro,el númerode
registrosa escribiryun punteroala estructuraFILE del ficheroal que se hará laescritura.
10.9ftell
La funciónftellretornael valordel indicadorde posiciónde ficheroparael stream, si se tiene
éxito.Si falla,lafunciónftell retorna -1Ly guarda unvalorpositivo,segúnladefiniciónde la
implementación,enerrno.
34
11. Sentencias de control
11.1if
La sentenciaif («si») ejecutalasinstruccionessólosi se cumple unacondición.Si lacondiciónes
falsa,nose hace nada:
if (condición)
{
sentencias
}
11.2if else
La sentenciaif-elif-elsedepende de dosomáscondiciones,que sonevaluadasenorden.La
primeraque esverdaderadeterminaqué instruccionesseránejecutadas:
if (condición)
{
sentencias
}
else {
}
11.3 while
El ciclowhile («mientras») ejecutaunasecuenciade instruccionesmientrasunacondiciónsea
verdadera:
while (condición)
{
sentencias
}
35
11.4 for
El ciclofor con rangoejecutauna secuenciade sentenciasunacantidadfijade veces.
Para llevarlacuenta,utilizaunavariable de control que tomavaloresdistintosencadaiteración.
for (inti,i<5, i++)
{
sentencias
}
11.5 do while
En un bucle do while,primerose ejecutael bloquede instruccionesy,después,se evalúala
condición.Enel caso de que ésta seaverdadera,se vuelve aejecutarel bloquede instrucciones.Y
así sucesivamente,hastaque,lacondiciónseafalsa.
do {
sentecias}
while (condición)
36
37
38
12. Funciones
<tipo> [clase::] <nombre>( [Parámetros] )
{
cuerpo;
}
12.1 Parámetros
12.1.1 Parámetro por Valor
El parámetrooriginal nosufrirácambioalguno,estoseguirásiendociertoaúncuandodentrode la
funciónhubieraunainstrucciónparecida
12.1.2 Parámetro por Referencia
Se cambia el valordel parámetrooriginal.
12.2 Función Void
La palabrareservadavoidesutilizadaparadeclararfuncionessinvalorde retornoytambiénpara
indicarque una funciónespecíficanorequiere de parámetros.

Más contenido relacionado

DOCX
Manual henry hernadez
DOCX
PRACTICA DE WORD!
PDF
Ensayo Compilador Suma y Resta
DOCX
Manualito C/C++ - Leonardo Aquino
PDF
Lenguaje de programacion_para_etiquetas_zpl_epl
PDF
Programación en c y c++
DOCX
Practica 1 tic
DOCX
Practicas
Manual henry hernadez
PRACTICA DE WORD!
Ensayo Compilador Suma y Resta
Manualito C/C++ - Leonardo Aquino
Lenguaje de programacion_para_etiquetas_zpl_epl
Programación en c y c++
Practica 1 tic
Practicas

Destacado (6)

DOCX
Manual C-C++ Pablo
DOCX
Manual de programación en C/C++
DOCX
Manual de c c++
DOCX
Manual C/C++
DOCX
Manual C/C++ Jason Martinez
Manual C-C++ Pablo
Manual de programación en C/C++
Manual de c c++
Manual C/C++
Manual C/C++ Jason Martinez
Publicidad

Similar a Manual programación (20)

PPTX
Introducción
PPTX
Introducción
PPTX
TUTORIAL DE LENGUAJE C
PPTX
TUTORIAL LENGUAJE C
PPTX
Introducción al lenguaje c
DOCX
Manual programación
PDF
Manual c++public
PDF
Manual c++
PDF
C++ manual
PDF
Trabajo Final de Programación
PDF
Programación c++forcsma
DOCX
Manual de usuario - christian García
DOCX
A1 u1-16230227
PDF
Revista programacion
PDF
Guia en lenguaje c
DOCX
Instituto tecnológico particular
DOCX
Manual de programacion
Introducción
Introducción
TUTORIAL DE LENGUAJE C
TUTORIAL LENGUAJE C
Introducción al lenguaje c
Manual programación
Manual c++public
Manual c++
C++ manual
Trabajo Final de Programación
Programación c++forcsma
Manual de usuario - christian García
A1 u1-16230227
Revista programacion
Guia en lenguaje c
Instituto tecnológico particular
Manual de programacion
Publicidad

Más de Estudiantes ISI_UCA (16)

DOCX
Manual C/C++ Carlos Diaz
DOCX
Manual de usuario c
DOCX
Manual C/C++ Néstor Flores
DOCX
Manual AGFV
DOCX
Manual C / C++ Melvin
DOCX
Manual laboratorio de programación#1
DOCX
Manual de Programación c/c++ Ricky Bonilla
DOCX
Manual de usuario (C/C++)
PDF
Lenguaje de programacion en c
DOCX
manualitoRodolfo
DOCX
Manual Francis Jarquin R
DOCX
Manual C/C++
DOCX
DOCX
Manual de c/c++
DOCX
Manual laboratorio de programación i
DOCX
Manual de c
Manual C/C++ Carlos Diaz
Manual de usuario c
Manual C/C++ Néstor Flores
Manual AGFV
Manual C / C++ Melvin
Manual laboratorio de programación#1
Manual de Programación c/c++ Ricky Bonilla
Manual de usuario (C/C++)
Lenguaje de programacion en c
manualitoRodolfo
Manual Francis Jarquin R
Manual C/C++
Manual de c/c++
Manual laboratorio de programación i
Manual de c

Último (20)

PPTX
Cortinas-en-Presas-de-Gravedad-Vertedoras-y-No-Vertedoras.pptx
PDF
manual-electricidad-automotriz-sistemas-electricos-bateria-alumbrado-iluminac...
PPTX
GEOLOGIA, principios , fundamentos y conceptos
PPTX
Presentación - Taller interpretación iso 9001-Solutions consulting learning.pptx
PPTX
clase MICROCONTROLADORES ago-dic 2019.pptx
PPTX
MODULO 1.SEGURIDAD Y SALUD CONCEPTOS GENERALES.pptx
PDF
Oficio SEC 293416 Comision Investigadora
PDF
SEC formula cargos al Consejo Directivo del Coordinador y a ocho eléctricas p...
PDF
Sustitucion_del_maiz_por_harina_integral_de_zapall.pdf
PDF
prg2_t01_p01_Fundamentos POO - parte1.pdf
PPT
Sustancias Peligrosas de empresas para su correcto manejo
PDF
GUÍA PARA LA IMPLEMENTACIÓN DEL PLAN PARA LA REDUCCIÓN DEL RIESGO DE DESASTRES
PDF
Informe Estudio Final Apagon del 25 de febrero
DOCX
Cumplimiento normativo y realidad laboral
PDF
Perfilaje de Pozos _20250624_222013_0000.pdf
PDF
FIJA NUEVO TEXTO DE LA ORDENANZA GENERAL DE LA LEY GENERAL DE URBANISMO Y CON...
PPTX
1 CONTAMINACION AMBIENTAL EN EL PLANETA.pptx
PDF
TESTAMENTO DE DESCRIPTIVA ..............
PDF
S15 Protección de redes electricas 2025-1_removed.pdf
PPTX
Seminario de telecomunicaciones para ingeniería
Cortinas-en-Presas-de-Gravedad-Vertedoras-y-No-Vertedoras.pptx
manual-electricidad-automotriz-sistemas-electricos-bateria-alumbrado-iluminac...
GEOLOGIA, principios , fundamentos y conceptos
Presentación - Taller interpretación iso 9001-Solutions consulting learning.pptx
clase MICROCONTROLADORES ago-dic 2019.pptx
MODULO 1.SEGURIDAD Y SALUD CONCEPTOS GENERALES.pptx
Oficio SEC 293416 Comision Investigadora
SEC formula cargos al Consejo Directivo del Coordinador y a ocho eléctricas p...
Sustitucion_del_maiz_por_harina_integral_de_zapall.pdf
prg2_t01_p01_Fundamentos POO - parte1.pdf
Sustancias Peligrosas de empresas para su correcto manejo
GUÍA PARA LA IMPLEMENTACIÓN DEL PLAN PARA LA REDUCCIÓN DEL RIESGO DE DESASTRES
Informe Estudio Final Apagon del 25 de febrero
Cumplimiento normativo y realidad laboral
Perfilaje de Pozos _20250624_222013_0000.pdf
FIJA NUEVO TEXTO DE LA ORDENANZA GENERAL DE LA LEY GENERAL DE URBANISMO Y CON...
1 CONTAMINACION AMBIENTAL EN EL PLANETA.pptx
TESTAMENTO DE DESCRIPTIVA ..............
S15 Protección de redes electricas 2025-1_removed.pdf
Seminario de telecomunicaciones para ingeniería

Manual programación

  • 2. Tabla de contenido 1. Tipos de datos.................................................................................................................... 1 1.1 Numéricos enteros..................................................................................................... 1 1.2 Numéricos reales........................................................................................................ 2 1.3 Lógico........................................................................................................................ 2 2. Juego de caracteres............................................................................................................ 3 3. Declaración de variables..................................................................................................... 4 4. Entradas y Salidas .............................................................................................................. 5 4.1 Entrada y Salida C....................................................................................................... 5 4.1.1 fflush, getchar y putchar...................................................................................... 6 4.1.2 printf y scanf....................................................................................................... 8 4.2 Entrada y Salida C++ ..................................................................................................11 ............................................................................................................................................11 3. Keywords..........................................................................................................................13 4. Funciones.........................................................................................................................14 4.1 sizeof........................................................................................................................14 5. Tipos de Datos y Requerimientos de Memoria....................................................................15 6. Tratamiento de los tipos por el compilador de C/C++..........................................................16 7. Casting.............................................................................................................................19 8. Arreglos........................................................................................................................20 8.1 Concepto..................................................................................................................20 8.2 Sintaxis .....................................................................................................................20 9. Estructuras .......................................................................................................................22 10. Ficheros........................................................................................................................25 10.1 fopen y fclose............................................................................................................25 10.2 Rename ....................................................................................................................29 10.3 Remove ....................................................................................................................30 10.4 fgetc.........................................................................................................................31 ............................................................................................................................................31 10.5 fgets.........................................................................................................................31 10.6 fread.........................................................................................................................32 10.7 fscanf........................................................................................................................32 10.8 fwrite........................................................................................................................33
  • 3. 10.9 ftell...........................................................................................................................33 11. Sentencias de control ....................................................................................................34 11.1 if...............................................................................................................................34 11.2 if else........................................................................................................................34 11.3 while.........................................................................................................................34 11.4 for............................................................................................................................35 11.5 do while....................................................................................................................35 12. Funciones .....................................................................................................................38 12.1 Parámetros...................................................................................................................38 12.1.1 Parámetro por Valor...............................................................................................38 12.1.2 Parámetro por Referencia.......................................................................................38 12.2 Función Void.................................................................................................................38
  • 4. 1 1. Tipos de datos 1.1Numéricos enteros Tipo de Dato Descripción Número de bytes Rango short Entero corto 2 -32768 a 32767 int Entero 4 -2147483648 a +2147483647 long Entero largo 4 -2147483648 a +2147483647 char Carácter 1 -128 a 127 Tipo de Dato Descripción Número de bytes Rango signed short Entero corto 2 -32768 a 32767 unsigned short Entero corto sin signo 2 0 a 65535 signed int Entero 4 -2147483648 a +2147483647 unsigned int Entero sin signo 4 0 a 4294967295 signed long Entero largo 4 -2147483648 a +2147483647 unsigned long Entero largo sin signo 4 0 a 4294967295 signed char Carácter 1 -128 a 127 unsigned char Carácter sin signo 1 0 a 255
  • 5. 2 1.2Numéricos reales. Tipo de Dato Descripción Número de bytes Rango float Real (Número en coma flotante) 4 Positivos: 3.4E-38 a 3.4E38 Negativos: -3.4E-38 a - 3.4E38 double Real doble(Número en coma flotante de doble precisión) 8 Positivos: 1.7E-308 a 1.7E308 Negativos: -1.7E-308 a - 1.7E308 long double Real doble largo 10 Positivos: 3.4E-4932 a 1.1E4932 Negativos: -3.4E-4932 a -1.1E4932 1.3Lógico Tipo de Dato Descripción Número de bytes Rango bool Dato de tipo lógico 1 0, 1
  • 6. 3 2. Juego de caracteres El juego básico de caracteres de código fuente consta de 96 caracteres que pueden usarse en archivos de código fuente. Este conjunto incluye el carácter de espacio, tabulación horizontal, tabulación vertical, avance de página y caracteres de control de nueva línea, además del siguiente conjunto de caracteres gráficos: a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 _ { } [ ] # ( ) < > % : ; . ? * + - / ^ & | ~ ! = , " '
  • 7. 4 3. Declaración de variables Tipo de variable, nombre de la variable e inicialización.
  • 8. 5 4. Entradas y Salidas 4.1 Entrada y Salida C Se utiliza printf para mostrar un mensaje.
  • 9. 6 4.1.1 fflush, getchar y putchar Se declara “x” y se muestra un mensaje con puts. Se limpia el buffer y a través del getchar se almacena el carácter ingresado por el usuario en la variable “x”. El putchar permite que se muestre el valor del carácter en la salida.
  • 10. 7
  • 11. 8 4.1.2 printf y scanf Si se deseaintroducirunnúmerose debe usar“%d”y como reglageneral el &antesde lavariable enel caso del scanf.
  • 12. 9 Si se deseaintroducirun caracterse debe usar“%c” y como reglageneral el &antesde lavariable enel caso del scanf.
  • 13. 10 Si se deseaintroducirunacadenase debe usar“%s” y como reglageneral el &antesde lavariable enel caso del scanf.
  • 15. 12 Se utiliza cout para imprimir un mensaje y cin para la lectura de datos.
  • 16. 13 3. Keywords Las palabras claves son identificadores reservados predefinidos que tienen significados especiales. Es decir, que no pueden ser utilizados como identificadores en tu programa.
  • 17. 14 4. Funciones 4.1sizeof Determina el tamaño en bytes de una variable o tipo de dato.
  • 18. 15 5. Tipos de Datos y Requerimientos de Memoria Nº Instrucciones Resultado y Observaciones 1 Escriba el siguiente fragmento de código, compile y ejecute: int cantidad; cantidad=100; cout<<”valor: “<<cantidad<<endl; cout<<”tamaño: “<<sizeof(cantidad)<<endl; Aparece el valorque se le asignóa la variable “cantidad”y el tamaño (4 bytes) del tipode dato (entero) de lavariable “cantidad”. 2 Asigne a la variable cantidad el valor 1234567890 e imprima nuevamente la cantidad de bytes que requiere. Aparece nuevamente que el tamaño requeridoporlavariable cantidad,cuyotipo de dato esenteroesde 4 bytes. 3 Escriba el siguiente fragmento de código, compile y ejecute: float medida; medida=20.2536; cout<<”valor: “<<medida<<endl; cout<<”tamaño: “<<sizeof(medida)<<endl; Aparece el valorque se le asignóa la variable “medida”yel tamaño (4 bytes) del tipode dato (real) de lavariable “medida”. 4 Escriba el siguiente fragmento de código, compile y ejecute: char zona; zona=’X’; cout<<”valor: “<<zona<<endl; cout<<”tamaño: “<<sizeof(zona)<<endl; Aparece el valorque se le asignóa la variable “zona” y el tamaño(1 byte) del tipode dato (real) de lavariable “zona”. 5 Escriba el siguiente fragmento de código, compile y ejecute: char ciudad[25]; ciudad=”Managua”; cout<<”valor: “<<ciudad<<endl; cout<<”tamaño: “<<sizeof(ciudad)<<endl; Aparece error“Asignacióndel arreglo inválida”debidoaque se debe inicializarla variable cuandoestase declaraenel caso de que se esté trabajandocon dimensiones. 6 Escriba el siguiente fragmento de código, compile y ejecute: double temperatura; temperatura=25.123456789; cout<<”valor: “<<temperatura<<endl; cout<<”tamaño: “<<sizeof(temperatura)<<endl; Aparece el valorque se le asignóa la variable “temperatura”yel tamaño (8 bytes) del tipo de dato (doble) de lavariable “temperatura”. 7 Escriba el siguiente fragmento de código, compile y ejecute: bool estado; estado=false; cout<<”valor: “<<estado<<endl; cout<<”tamaño: “<<sizeof(estado)<<endl; Aparece el valorde la variable “estado”(0) y el tamaño(1 byte) del tipode dato(lógico) de la variable “estado”.
  • 19. 16 6. Tratamiento de los tipos por el compilador de C/C++ Nº Instrucciones Resultado y Observaciones 1 Escriba el siguiente fragmento de código, compile y ejecute: int cantidad; cantidad=100; cout<<”valor: “<<cantidad<<endl; Se muestrael valorde lavariable “cantidad”,eneste caso 100. 2 Modifique el valor asignado a la variable, compile y ejecute cantidad=25.8945; cout<<”valor: “<<cantidad<<endl; Se muestrael valorde cantidad peroredondeado,esdecirnose muestrala cifra completa. 3 Modifique el valor asignado a la variable, compile y ejecute cantidad=’F’; cout<<”valor: “<<cantidad<<endl; Se muestraun valordistinto al asignado,eneste caso“70”. 4 Modifique el valor asignado a la variable, compile y ejecute cantidad=”Completa”; cout<<”valor: “<<cantidad<<endl; Aparece que existe un“error: conversióninválidoal de constchar a int”. Es decir,ladeclaración correcta sería un const char. 5 Modifique el valor asignado a la variable, compile y ejecute cantidad=True; cout<<”valor: “<<cantidad<<endl; Se muestrael valorcomo “1”. 6 Escriba el siguiente fragmento de código, compile y ejecute: float medida; medida=20.2536; cout<<”valor: “<<medida<<endl; Se muestrael valorde lavariable “cantidad”,eneste caso 20.2536. 7 Modifique el valor asignado a la variable, compile y ejecute medida=85; cout<<”valor: “<<medida <<endl; Se muestrael valorasignadoa la variable,eneste caso“85”. 8 Modifique el valor asignado a la variable, compile y ejecute medida=’P’; cout<<”valor: “<<medida <<endl; Se muestraun valordistintoal asignado,eneste caso“80”. 9 Modifique el valor asignado a la variable, compile y ejecute medida=”Corta”; cout<<”valor: “<<medida <<endl; Aparece que existe un“error: conversióninválidoal de constchar a float”.Es decir,la declaración correcta sería un constchar. 10 Modifique el valor asignado a la variable, compile y ejecute medida=True; cout<<”valor: “<<medida <<endl; Se muestrael valorcomo “1”. 11 Escriba el siguiente fragmento de código, compile y ejecute: char zona; zona=’X’; cout<<”valor: “<<zona<<endl; Se muestrael valorasignadoa la variable,eneste caso‘X’.
  • 20. 17 Nº Instrucciones Resultado y Observaciones 12 Modifique el valor asignado a la variable, compile y ejecute zona=65; cout<<”valor: “<<zona<<endl; Se muestraun valordistintoal asignado,eneste caso“A”. 13 Modifique el valor asignado a la variable, compile y ejecute zona=95.56; cout<<”valor: “<<zona<<endl; Se muestraun valordistintoal asignado,eneste caso“_”. 14 Modifique el valor asignado a la variable, compile y ejecute zona=”Central”; cout<<”valor: “<<zona<<endl; Aparece que existe un“error: conversióninválidoal de constchar a char”. Es decir,ladeclaración correcta sería un constchar. 15 Modifique el valor asignado a la variable, compile y ejecute zona=False; cout<<”valor: “<<zona<<endl; No se muestraningúnvalor. 16 Escriba el siguiente fragmento de código, compile y ejecute: ciudad=”Managua”; cout<<”valor: “<<ciudad<<endl; Aparece que lavariable “ciudad”no fue declarada. 17 Modifique el valor asignado a la variable, compile y ejecute ciudad=25; cout<<”valor: “<<ciudad<<endl; Aparece que lavariable “ciudad”no fue declarada. 18 Modifique el valor asignado a la variable, compile y ejecute ciudad=100.50; cout<<”valor: “<<ciudad<<endl; Aparece que lavariable “ciudad”no fue declarada. 19 Modifique el valor asignado a la variable, compile y ejecute ciudad=’C’; cout<<”valor: “<<ciudad<<endl; Aparece que lavariable “ciudad”no fue declarada. 20 Modifique el valor asignado a la variable, compile y ejecute ciudad=False; cout<<”valor: “<<ciudad<<endl; Aparece que lavariable “ciudad”no fue declarada. 21 Escriba el siguiente fragmento de código, compile y ejecute: double temperatura; temperatura=25.123456789; cout<<”valor: “<<temperatura<<endl; Se muestrael valorde cantidad peroredondeado,esdecirnose muestrala cifra completa.En este caso “25.1235”. 22 Modifique el valor asignado a la variable, compile y ejecute temperatura=30; cout<<”valor: “<<temperatura<<endl; Se muestrael valorasignadoa la variable,eneste caso“30”. 23 Modifique el valor asignado a la variable, compile y ejecute temperatura=’T’; cout<<”valor: “<<temperatura<<endl; Se muestraun valordistintoal asignado,eneste caso“84”.
  • 21. 18 Nº Instrucciones Resultado y Observaciones 24 Modifique el valor asignado a la variable, compile y ejecute temperatura=”Caliente”; cout<<”valor: “<<temperatura<<endl; Aparece que existe un“error: conversióninválidoal de constchar a double”.Esdecir,la declaración correcta sería un constchar. 25 Modifique el valor asignado a la variable, compile y ejecute temperatura=True; cout<<”valor: “<<temperatura<<endl; Se muestrael valorcomo “1”. 26 Escriba el siguiente fragmento de código, compile y ejecute: bool estado; estado=false; cout<<”valor: “<<estado<<endl; Se muestrael valorcomo “0”. 27 Modifique el valor asignado a la variable, compile y ejecute estado=100; cout<<”valor: “<<estado<<endl; Se muestrael valorcomo “1” y no cómo “100”, los0 son eliminados enla salida. 28 Modifique el valor asignado a la variable, compile y ejecute estado=500.85; cout<<”valor: “<<estado<<endl; Se muestrael valorcomo “1” y no cómo “500.85”. 29 Modifique el valor asignado a la variable, compile y ejecute estado=’E’; cout<<”valor: “<<estado<<endl; Se muestrael valorcomo “1”. 30 Modifique el valor asignado a la variable, compile y ejecute estado=”Aceptado”; cout<<”valor: “<<estado<<endl; Aparece que existe un“error: conversióninválidoal de constchar a bool”.Es decir,la declaración correcta sería un constchar.
  • 23. 20 8. Arreglos 8.1Concepto Los arrays permiten agrupar datos usando un único identificador. Todos los elementos de un array son del mismo tipo, y para acceder a cada elemento se usan índices. 8.2 Sintaxis <tipo> <identificador>[número de elementos];
  • 24. 21
  • 25. 22 9. Estructuras Al contrario que los arrays, las estructuras le permiten agrupar varios datos, que mantengan algún tipo de relación, aunque sean de distinto tipo, permitiendo manipularlos todos juntos, usando un mismo identificador, o cada uno por separado. Las estructuras son llamadas también muy a menudo registros, o en inglés records. Tienen muchos aspectos en común con los registros usados en bases de datos. Y siguiendo la misma analogía, cada objeto de una estructura se denomina a menudo campo, o field. Sintaxis: struct [<identificador>]{ [<tipo> <nombre_objeto>[nombre_objeto]]; }<objeto_estructura>[<objeto_estructura>,…];
  • 26. 23
  • 27. 24
  • 28. 25 10. Ficheros 10.1fopen y fclose El fopenabre el documentocuyonombre esespecificadoenel parámetro yel fclose cierrael documento. "r" Lectura: Abre el archive para operaciones de entrada. El archive debe existir. "w" Escritura: Crea un archivo vacío para operaciones de salida. Si el archivo con el mismo nombre ya existe, su contenido es borrado y el archivo es tratado como un archivo nuevo vacío. Es decir, se sobrescribe. "a" Añadir: Abre un documento para la salida al final de un documento. Las operaciones de salida siempre escriben datos al final del documento, expandiéndolo. El documento es creado si no existe. "r+" Lectura/actualización: Abre un documento para actualización (ambos para entrada y salida). El documento debe existir. "w+" Escritura/actualización: Crea un archivo vacío y lo abre para actualización (ambos para entrada y salida). Si el archivo con el mismo nombre ya existe, su contenido es borrado y el archivo es tratado como un archivo nuevo vacío. Es decir, se sobrescribe. "a+" Añadir/actualización: Abre un archivo para actualización (ambos para entrada y salida. El archivo es creado si no existe.
  • 29. 26 Se crea el archivode formaexitosayse guardan 3 caracteresenel archivo.
  • 30. 27 Se crea el archivoy se guarda laletracon “fputc”.
  • 31. 28
  • 32. 29 10.2Rename Se asignacomo nuevonombre de archivoa “new”.
  • 33. 30 10.3 Remove Se eliminael archivoque se renombróanteriormente.
  • 34. 31 10.4 fgetc Esta funciónlee uncarácter a la vezdel archivoque estásiendoseñaladoconel puntero*archivo. En caso de que lalecturasea exitosadevuelve el carácterleídoyencaso de que no lo seao de encontrarel final del archivodevuelveEOF. 10.5 fgets Esta funciónestádiseñadaparaleercadenasde caracteres.Leeráhasta n-1caracteres o hasta que leaun cambiode línea'n' o un final de archivoEOF. En este últimocaso,el carácterde cambiode línea'n' tambiénesleído.
  • 35. 32 10.6 fread Esta función lee un bloque de una "stream" de datos. Efectúa la lectura de un arreglo de elementos "count", cada uno de los cuales tiene un tamaño definido por "size". Luego los guarda en el bloque de memoria especificado por "ptr". El indicador de posición de la cadena de caracteres avanza hasta leer la totalidad de bytes. Si esto es exitoso la cantidad de bytes leídos es (size*count). 10.7 fscanf La función fscanf funciona igual que scanf en cuanto a parámetros, pero la entrada se toma de un fichero en lugar del teclado. El prototipo correspondiente de fscanf es: int fscanf(FILE *fichero, const char *formato, argumento, ...);
  • 36. 33 10.8fwrite Esta funciónestápensadaparatrabajar con registrosde longitudconstante yformaparejacon fread.Es capaz de escribirhaciaun ficherounoo variosregistrosde lamismalongitud almacenadosapartir de una direcciónde memoriadeterminada.El valorde retornoesel número de registrosescritos,noel númerode bytes.Los parámetrosson:un punteroala zona de memoriade donde se obtendránlosdatosa escribir,el tamañode cada registro,el númerode registrosa escribiryun punteroala estructuraFILE del ficheroal que se hará laescritura. 10.9ftell La funciónftellretornael valordel indicadorde posiciónde ficheroparael stream, si se tiene éxito.Si falla,lafunciónftell retorna -1Ly guarda unvalorpositivo,segúnladefiniciónde la implementación,enerrno.
  • 37. 34 11. Sentencias de control 11.1if La sentenciaif («si») ejecutalasinstruccionessólosi se cumple unacondición.Si lacondiciónes falsa,nose hace nada: if (condición) { sentencias } 11.2if else La sentenciaif-elif-elsedepende de dosomáscondiciones,que sonevaluadasenorden.La primeraque esverdaderadeterminaqué instruccionesseránejecutadas: if (condición) { sentencias } else { } 11.3 while El ciclowhile («mientras») ejecutaunasecuenciade instruccionesmientrasunacondiciónsea verdadera: while (condición) { sentencias }
  • 38. 35 11.4 for El ciclofor con rangoejecutauna secuenciade sentenciasunacantidadfijade veces. Para llevarlacuenta,utilizaunavariable de control que tomavaloresdistintosencadaiteración. for (inti,i<5, i++) { sentencias } 11.5 do while En un bucle do while,primerose ejecutael bloquede instruccionesy,después,se evalúala condición.Enel caso de que ésta seaverdadera,se vuelve aejecutarel bloquede instrucciones.Y así sucesivamente,hastaque,lacondiciónseafalsa. do { sentecias} while (condición)
  • 39. 36
  • 40. 37
  • 41. 38 12. Funciones <tipo> [clase::] <nombre>( [Parámetros] ) { cuerpo; } 12.1 Parámetros 12.1.1 Parámetro por Valor El parámetrooriginal nosufrirácambioalguno,estoseguirásiendociertoaúncuandodentrode la funciónhubieraunainstrucciónparecida 12.1.2 Parámetro por Referencia Se cambia el valordel parámetrooriginal. 12.2 Función Void La palabrareservadavoidesutilizadaparadeclararfuncionessinvalorde retornoytambiénpara indicarque una funciónespecíficanorequiere de parámetros.