Você está na página 1de 9

8/11/2017 Curso: CB411SOT (Parte II)

Usted se ha identificado como Jean Pierre Luis Espinoza Tacuri (Salir)

Página Principal ► Mis cursos ► CB411SOT (Parte II) ► Tipo de Datos, Variables y salida a pantalla

Ajustes
Diagrama de temas
Administración del curso
SILABO Lenguaje C Tipo de Datos, Variables y salida a pantalla Calificaciones

Constantes+Operadores+Ingreso por teclado Funciones Matemáticas Estructuras Repetitivas Ajustes de mi perfil

Estructuras Condicionales+PC2 Tema 7 PARCIAL Arreglos Aplicaciones de Arreglos+PC3 Funciones


Navegación
Matrices+PC4 Aplicaciones Matrices+PC5 Cadenas Aplicaciones de Cadenas FINAL SUSTITUTORIO
Página Principal
GUI Área personal
Páginas del sitio
Mi perfil
Mis cursos
TIPOS DE DATOS
CB411SOT (Parte II)
El primer objetivo de un programa informático es el manejo de datos. Un dato es toda aquella información Participantes
que se puede tratar en un programa. Existen datos de entrada y datos de salida. Los datos los podemos
dividir en los siguientes grupos: SILABO
Tipo de Datos,
Datos de números enteros. Variables y salida a
Datos de números decimales. pantalla
Datos de caracteres.
Datos lógicos (verdadero y falso). Código ASCII
Funciones
Para ingresar un dato al programa requerimos saber previamente cual será el tamaño de este con la
Matemáticas
finalidad de reservar espacio en memoria. Con dicha información se escoge uno de los diversos tipos de
datos que soporta el lenguaje de programación. Estructuras
Condicionales+PC2
El Tipo de Datos, determina el tamaño que ocupará dicha información en la memoria del computador. PARCIAL
Arreglos
Hay dos clases de tipos de datos:
Aplicaciones de
Tipo de datos fundamentales. Arreglos+PC3
Tipo de datos derivados.
Buscar en los foros
El lenguaje C ha soportado una gran variedad de tipos de datos fundamentales:
Ir
bool (1 bit): boleano o lógico (true/false).
char (8 bit): caracteres (letras, dígitos, etc). Búsqueda avanzada
int (32 bits): enteros (números enteros positivos y negativos).
Últimas noticias
short (16 bits): enteros pequeños (positivos y negativos).
long (64 bits) enteros largo (positivos y negativos). (Sin novedades aún)

float (32 bits): números en coma flotante de simple precisión (SP Float). Eventos próximos
double (64 bits): números en coma flotante de doble precisión (DP Float).
long double (80 bits). No hay eventos próximos
void: no-tipo (se emplea con punteros). Ir al calendario...
Nuevo evento...
Entre los datos derivados tenemos:

String o Cadenas de caracteres. Actividad reciente


Array o Arreglos. Actividad desde martes, 7 de
etc. noviembre de 2017, 15:56
Informe completo de la
actividad reciente...
Sin novedades desde el
último acceso

VARIABLES
Una variable es un identificador para referenciar a un dato dentro del programa. Dependiendo del tipo de
dato que sea dicha variable, ocupará 1 byte (char), 2 byte (short), 4 bytes (int), etc.

Una variable es básicamente una posición de memoria (dirección) donde se almacena el valor de un
dato.

http://www.fieeuni.edu.pe/lms/course/view.php?id=706&topic=2 1/9
8/11/2017 Curso: CB411SOT (Parte II)

A las variables no se les puede dar cualquier nombre. Se puede emplear letras (de la a hasta la z; la ñ no
se utiliza), números y el símbolo '_'. Ejemplos de nombres válidos:

camiones
numero
buffer
a1
j10hola29
num_alumnos

Debido a que C e case sensitive, las siguientes palabras representan diferentes variables:

AREA
Area
aRea
arEa

Los nombres de las variables no pueden tener signos de admiración, ni de interrogación. El nombre de
una variable puede contener números, pero su primer carácter no puede serlo. Ejemplos de nombres no
válidos:

1abc
nombre?
num/alumnos

Tampoco valen como nombres de variable las palabras reservadas que usa el compilador. Por ejemplo:
for, main, do, while.

VARIABLE TIPO: bool


Para emplear una variable booleana se debe cargar
previamente la libreria stdbool.h. Esto se realiza de la
siguiente manera:

#include <stdbool.h>

Es una variable del tipo lógica. Tiene solo dos


valores: true o false.
Se declaran de la siguiente manera:

bool decision;

Podemos inicializar una variable boleana de la


siguiente manera:

bool decision=true;
bool decision=false;

Las variables booleanas se almacenan en memoria como numeros:

true = 1
false = 0

Para imprimir una variable tipo bool no existe un modificador como si lo hay para variables enteras
o decimales. Se debe usar:

printf (decision? "si es verdadero" : "si es falso");

Ejemplo 01B: El siguiente programa imprimir el valor de una variable booleana:

#include <stdio.h>
#include <stdbool.h>
main() {
bool decision;
decision=(5>4);
printf ("decision? "verdadero\n" : "falso\n");

http://www.fieeuni.edu.pe/lms/course/view.php?id=706&topic=2 2/9
8/11/2017 Curso: CB411SOT (Parte II)
system ("PAUSE");
}

Una variable booleana se puede manejar como si fuera un número debido a que:

true = 1
false =0

#include <stdio.h>
#include <stdbool.h>
main() {
bool decision;
decision=(5>4);
printf ("%i\n",decision);
system ("PAUSE");
}

%i permite imprimir un numéro o variable entera.

VARIABLE TIPO: chr


Los caracteres se almacenan en un sistema computacional como números. Estos números ya están
estandarizados mediante el denominado código ASCII.

Las variables de tipo char sirven para almacenar números que representan a caracteres.
Este tipo de variable utiliza 1 byte y puede almacenar números sin signo desde 0 hasta 255.

char letra;

En una variable de tipo char sólo podemos almacenar un caracter. No podemos almacenar
palabras ni frases.
Para almacenar en una variable char una letra, tenemos dos opciones:

Mediante comilla simple.


Mediante su código ASCII.

Debe quedar claro que en el sistema computacional lo que se almacena en memoria es un


número: el código ASCII.

En el siguiente gráfico podemos observar la creación de 4 variables tipo char mediante las dos formas
descritas:

Para imprimir en pantalla una variable char debemos emplear: %c, una por cada variable que
queremos imprimir.

http://www.fieeuni.edu.pe/lms/course/view.php?id=706&topic=2 3/9
8/11/2017 Curso: CB411SOT (Parte II)

Ejemplo 02B: Programa que imprime en pantalla el caracter U.

#include <stdio.h>
main() {
char letra='U';
printf( "La letra es: %c\n", letra );
system("PAUSE");
}

Ejercicio 01B: Escribir un programa que imprime en pantalla la palabra UNI.

#include <stdio.h>
main() {
char letra1='U';
char letra2='N';
char letra3='I';
printf("%c%c%c\n",letra1,letra2,letra3);
system("PAUSE");
}

Código ASCII
El código ASCII (American Standard Code for Information Interchange) es una forma de representar
caracteres en un sistema computacional. Es un código de 8 bits que permite representar caracteres
alfanuméricos. Se puede representar hasta 256 caracteres. Ejemplo:

En el siguiente enlace puede descargar el tabla de códigos ASCII:

Código ASCII

Tambien puede acceder a una tabla de códigos ASCII interactiva:

http://www.elcodigoascii.com.ar/

Ejemplo 03B: Programa que imprime en pantalla el valor de una variable tipo char y luego el código
ASCII de dicha variable.

#include <stdio.h>
main() {
char letra='U';
printf( "La letra es: %c\n", letra );
printf( "El ASCII es: %i\n", letra );
system("PAUSE");
}

Ejemplo 04B: Programa que imprime en pantalla la "diferencia" entre letras.

#include <stdio.h>
main() {
printf( "El valor de Z-A es: %i\n", 'Z'-'A');
printf( "El valor de a-A es: %i\n", 'a'-'A');

http://www.fieeuni.edu.pe/lms/course/view.php?id=706&topic=2 4/9
8/11/2017 Curso: CB411SOT (Parte II)
system("PAUSE");
}

Le queda claro los resultados?

Ejemplo 05B: Programa que imprime en pantalla el valor de una variable tipo char y su
correspondiente código ASCII, luego incrementa el valor de dicha variable e imprime en pantalla
nuevamente la variable con su correspondiente código ASCII.

#include <stdio.h>
main() {
char letra='A';
printf("La letra es %c y su valor ASCII es %i\n", letra, letra);
letra = letra + 1;
printf("Ahora la letra es %c y su valor ASCII es %i\n", letra, letra);
system("PAUSE");
}

VARIABLE TIPO: int


En un tipo de datos que permite almacenar números enteros (sin decimales).
Este tipo de datos utiliza 4 bytes. Se puede expresar números positivos y negativos:

-2,147,483,648 a +2,147,483,647

Se declara de la siguiente manera:

int num;

Esto hace que declaremos una variable llamada num la cual va a contener un número entero.

Para imprimir en pantalla una variable entera debemos emplear %i o %d, una por cada variable que
queremos imprimir.

Ejemplo 06B: Programa que imprime el valor de una variables y el lugar que ocupa en la memoria
RAM (dirección).

#include <stdio.h>
main() {
int x=10,direccion;
printf("x= %i\n", x);
direccion= &x;
printf("direccion x: %i\n",direccion);
system("PAUSE");
}

Ejemplo 06C: Programa que imprime en pantalla los valores de tres variables enteras. Observe que
se puede definir las variables por separado o en una sola fila separados por coma:

#include <stdio.h>
main() {
int x=10;
int y=20,z=30;

http://www.fieeuni.edu.pe/lms/course/view.php?id=706&topic=2 5/9
8/11/2017 Curso: CB411SOT (Parte II)
printf( "%i\n", x);
printf( "%i\n", y);
printf( "%i\n", z);
//otra forma es:
printf( "%i\n%i\n%i\n",x,y,z);
system("PAUSE");
}

Ejemplo 07B: El mismo ejemplo anterior, pero adicionando texto.

#include <stdio.h>
main() {
int x=10;
int y=20,z=30;
printf( "El valor de x es: %i\n", x);
printf( "El valor de y es: %i\n", y);
printf( "El valor de z es: %i\n", z);
//otra forma es:
printf( "El valor de x es: %i\nEl valor de y es: %i\nEl valor de z es: %i\n",x,y,z);
system("PAUSE");
}

Ejemplo 08B: Programa que imprime en pantalla el valor inicial de una variable entera y luego dicha
variable es incrementada en 1 para nuevamente ser impresa en pantalla.

#include <stdio.h>
main() {
int x=10;
printf( "El valor inicial de x es %i\n", x );
x=x+1;
printf( "Ahora el valor es %i\n", x );
system("PAUSE");
}

Ejercicio 02B: Elabore un programa que permita sumar, restar y multiplicar dos variables, las cuales
deben ser inicializadas con los valores de 20 y 10.

Para el cálculo de la suma, resta y multiplicación se debe crear tres variables: suma, resta y
producto.
Los resultados deben ser mostrados igual que el gráfico siguiente:

Solución:

#include <stdio.h>
main() {
int x=20,y=10;
int suma, resta, producto;
suma=x+y;
resta=x-y;
producto=x*y;
printf( "El valor de la variable x es: %i\n", x);
printf( "El valor de la variable y es: %i\n", y);
printf( "El valor de la suma es: %i\n", suma);

http://www.fieeuni.edu.pe/lms/course/view.php?id=706&topic=2 6/9
8/11/2017 Curso: CB411SOT (Parte II)
printf( "El valor de la resta es: %i\n", resta);
printf( "El valor del producto es: %i\n", producto);
system("PAUSE");
}

Otra forma de hacerlo es:

#include <stdio.h>
main() {
int x=20,y=10;
printf( "El valor de la variable x es: %i\n", x);
printf( "El valor de la variable y es: %i\n", y);
printf( "El valor de la suma es: %i\n", x+y);
printf( "El valor de la resta es: %i\n", x-y);
printf( "El valor del producto es: %i\n", x*y);
system("PAUSE");
}

Fíjese que es posible realizar operaciones artimético/lógicas dentro del printf.

VARIABLE TIPO: float


En este tipo de variable la utilizamos para almacenar números decimales de simple precisión
denominado SP Float. Utiliza 4 bytes.
Este tipo de variable de declara de la siguiente manera:

float numero;

Para imprimir valores tipo float usamos %f.


Si queremos escribirlo en notación exponencial usamos %e:

Ejemplo 09B: Programa que imprime en pantalla el valor de una variable tipo float en notación
decimal y notación exponencial.

#include <stdio.h>
main() {
float num=512.56;
printf( "El valor de num es: %f\n", num );
system("PAUSE");
printf( "El valor de num es: %e\n", num );
system("PAUSE");
}

VARIABLE TIPO: double


Permite almacenar números decimales de doble precisión denominados DP Float. Utilizan 8
bytes.
Se declaran de la siguiente manera:

double numero;

Para imprimir una variable tipo double se usa los modificadores: %lf y %e

http://www.fieeuni.edu.pe/lms/course/view.php?id=706&topic=2 7/9
8/11/2017 Curso: CB411SOT (Parte II)
También es posible emplear el modificador %lf:

El cual se comporta como %f en los compiladores C99 y C11.


En el compilador C89 no está definido.

Ejemplo 10B: En el siguiente programa veremos que ocurre cuando combinamos diversos tipos de
datos.

#include <stdio.h>
main() {
int x=5,y;
double b=32.97345;
y=x+b;
printf("El valor es %i\n", y);
system("PAUSE");
}

Observe que el resultado es 37. Porqué?. Redondea o trunca?

Ejemplo 11B: Modifiquemos el programa anterior para poder visualizar el resultado correcto:

#include <stdio.h>
main() {
int x=5;
double y;
double b=32.67345;
y=x+b;
printf("El valor es %lf\n", y);
system("PAUSE");
}

Limitar el número de decimales


En muchos programas vamos a necesitar restringir el número de decimales que queremos visualizar.
Para ello se utiliza el punto y luego se indica el número de decimales a mostrar. Ejemplo:

#include <stdio.h>
main() {
double a=32.67385;
printf("El valor es %.3lf\n", a);
system("PAUSE");
}

Observar que el compilador redondea a 3 decimales.


Qué ocurre si en vez del número 3 colocamos 0? %.0lf

Trunca o redondea?

Cálculo del tamaño de cada tipo de datos


Para calcular el tamaño que tiene cada tipo de datos, debemos hacer uso del operador sizeof, el
cual devuelve el tamaño en bytes que ocupa una variable o algún tipo de dato. Escriba el siguiente
programa:

#include <stdio.h>
main() {
printf( "El tipo char ocupa %i bytes\n", sizeof(char) );
printf( "El tipo int ocupa %i bytes\n", sizeof(int) );
printf( "El tipo float ocupa %i bytes\n", sizeof(float) );
printf( "El tipo double ocupa %i bytes\n", sizeof(double) );
system("PAUSE");
}

http://www.fieeuni.edu.pe/lms/course/view.php?id=706&topic=2 8/9
8/11/2017 Curso: CB411SOT (Parte II)

Ir a... Elegir...

Usted se ha identificado como Jean Pierre Luis Espinoza Tacuri (Salir)

Administrado por: Ing. Mauricio Galvez Legua

http://www.fieeuni.edu.pe/lms/course/view.php?id=706&topic=2 9/9

Você também pode gostar