FUNDAMENTOS DE PROGRAMACIÓN VARIABLES, CONSTANTES Y TIPOS DE DATOS EN C
¿Qué es una Variable? Es solo un nombre para identificar posiciones de memoria. Este nombre de la variable debe ser un  identificador válido. En las variables (posiciones de memoria) se guardan los datos usados por el programa durante su ejecución. TODA variable debe ser DECLARADA  antes de poder ser utilizada.
Un  identificador  es simplemente el nombre que le vamos a dar a la variable, constante o función Para que un identificador sea válido debe:  Iniciar con una letra del alfabeto inglés, o con el signo (_) No debe contener caracteres especiales, tales como @, $, # Después de la primera letra puede contener más letras del  alfabeto inglés, números, o el carácter (_) NO DEBE haber espacios en blanco en los identificadores C diferencia mayúsculas de minúsculas, entonces no es lo  mismo declarar la variable  numero  que  Numero  o  NuMeRo Existen palabras propias del lenguaje (palabras reservadas) que no pueden ser usadas como identificadores  ej:  if, do
Ejemplos de identificadores válidos y no válidos No Válidos Válidos ñumero numero @hola _hola Peso neto Peso_neto 1radio radio1 if si
Tipos de variables Variables globales:  son las que se declaran después del llamado a las cabeceras, pero antes de cualquier función, y son útiles para cualquier parte del programa. Variables locales:  son las que se declaran dentro de una función, y solo sirven para ser usadas dentro de esa función.
Tipos de datos Los tipos de datos definen los métodos de almacenamiento disponibles para representar información, junto con la manera en que dicha información ha de ser interpretada.  Los tipos de datos son indispensables para la declaración de variables. En C tenemos diferentes tipos de datos:
Tipos de datos (I) Tipo Bytes Desde Hasta void Es nulo (NULL) no retorna nada signed char   1 -128 127 unsigned char   1 0 255 signed short   2 -32768 32767 unsigned short   2 0 65535 signed int   2 -32768 32767
Tipos de datos (II) Tipo Bytes Desde Hasta unsigned int  2 0 65535 signed long  4 -2147483648 2147483647 unsigned long  4 0 4294967295 float 4 3,4x10 -38 3,4x10 38 double 8 1,7x10 -308 1,7x10 308 long double 10 3,4x10 -4932 3,4x10 4932
Nota sobre los tipos de datos:  si omitimos las palabras “signed” o “unsigned” al declarar un tipo de dato, el compilador automáticamente asume por default que es un tipo “signed”; es decir que si al declarar el tipo de dato simplemente colocamos, por ejemplo, “int”, entonces el compilador asumirá que hemos declarado un “signed int”
Para declarar variables globales:   //llamado a las cabeceras Tipo_dato1 variable1, variable2, … , variablen; Tipo_dato2 variable3, variable4, … , variablem; //declaración de funciones{…} Ejemplo: #include<stdio.h> char caracter; float iva,total_pagar,descuento; unsigned long pvc,tcd; void main(){ … //instrucciones; ... } Estas variables van a servir en  cualquier parte  del programa
Para declarar variables locales:   //llamado a las cabeceras //declaración de una función{ Tipo_dato1 variable1, variable2, … , variablen; Tipo_dato2 variable3, variable4, … , variablem; } Ejemplo: #include<stdio.h> void main(){ int numero,edad,cantidad; float iva,total_pagar,descuento; unsigned long pvc,tcd; //instrucciones; ... } Estas variables van a servir  solo en la función main()
¿Qué son las constantes? Son aquellos valores que, una vez compilado el programa, no pueden ser cambiados. Al definir las constantes, debemos tomar en cuenta las siguientes  REGLAS DE CONVERSIÓN DE TIPOS DE DATOS:
Reglas de conversión de tipos de datos I Una constante entera (sin parte decimal) es tomada como tal, a menos que se la añadan las letras F ó L (mayúsculas ó minúsculas) ejemplos :  1 : tomada como  entera (int) 12f : tomada como  flotante (float)  456L : tomada como  doble larga (long double) Una variable con parte decimal es tomada siempre como DOUBLE, salvo que se la siga de la letra F ó L  2.0 : tomada como  doble (double)   3.56F : tomada como  flotante (float)   1.007L : tomada como  flotante larga (long float)
Reglas de conversión de tipos de datos II Si en cualquiera de los casos anteriores agregamos la letra U ó u la constante queda calificada como UNSIGNED:  86u : tomada como  entera sin signo (unsigned int)   32.44632UL : tomada como  doble larga sin signo (unsigned long double) Una variable numérica que comienza con &quot;0&quot; (cero) es tomado como  OCTAL  asi : 012 equivale a 10 unidades en numeración decimal  Una variable numérica que comienza con &quot;0x&quot; ó &quot;0X&quot; (cero – equis) es tomada como  HEXADECIMAL  asi : 0x16 equivale a 22 unidades en numeración decimal
Para declarar constantes:   //llamado a las cabeceras #define constante1 valor1; #define constante2 valor2; … //declaración de una función{ } Ejemplo: #include<stdio.h> #define PI 3.141592 //constante double #define OCTAL 017 //constante octal #define FLOTANTE 14F //constante flotante Void main(){ … //instrucciones; ... } Estas constantes sirven  en cualquier parte del programa
Operadores Aritméticos en C Operador Nombre Ejemplo + Suma a+b - Resta a-b * Multiplicación a*b / División a/b % Residuo entero de la división a%b ++ Incremento en 1 a++ -- Decremento en 1 a--
Operadores Relacionales en C Operador Nombre Ejemplo > Mayor que a>b < Menor que a<b >= Mayor o igual que a>=b <= Menor o igual que a<=b == Igual (Equivalente) a==b != Diferente (No es igual) a!=b
Operadores Lógicos en C Operador Nombre Ejemplo Devuelve cierto si: && Y (and) (exp1)&& (exp2) ambas son verdaderas || O (or) (exp1)|| (exp2) Una o ambas es verdadera ! No (not) !(exp1) Cambia el valor de la expresión
Notas sobre los Operadores en C Los operadores aritméticos y relacionales pueden trabajar con variables o constantes de cualquier tipo numérico, como por ejemplo int, double, float, etc En los Operadores lógicos, exp1 y exp2 corresponden a  EXPRESIONES LÓGICAS  (Expresiones que pueden tomar los valores de verdadero o falso).  Ejemplo:  (7<2)||(4>3)
Caracteres de conversión más usados de scanf(); y printf(); (I) Carácter Significado %c El dato es carácter %d El dato es entero %e El dato es valor en coma flotante %f El dato es valor en coma flotante %g El dato es valor en coma flotante %h El dato es entero corto
Caracteres de conversión más usados de scanf(); y printf(); (II) Carácter Significado %i El dato es entero decimal, octal o hexadecimal %o El dato es octal %s El dato es cadena de caracteres, seguido de espacio en blanco y del carácter fin de línea (\0) %u El dato es entero decimal sin signo %x El dato es entero hexadecimal
Caracteres de conversión más usados de scanf(); y printf(); (III) Ejemplo: int a,b; char letra; float area; printf(“%c ,%i, %f, %i”,letra,a,area,b);
Secuencias de Escape (I) Carácter Código Valor ASCII Campana (alerta) \a 007 Retroceso (espacio atrás) \b 008 Tabulador horizontal \t 009 Nueva línea \n 010 Tabulador vertical \v 011 Nueva página \f 012
Secuencias de Escape (II) Carácter Código Valor ASCII Retorno de carro \r 013 Comillas (“) \” 034 Interrogación (?) \? 039 Barra invertida \ \ 063 Fin de línea \0 092 Número octal \ooo 000

Variables, constantes y tipos de datos en C

  • 1.
    FUNDAMENTOS DE PROGRAMACIÓNVARIABLES, CONSTANTES Y TIPOS DE DATOS EN C
  • 2.
    ¿Qué es unaVariable? Es solo un nombre para identificar posiciones de memoria. Este nombre de la variable debe ser un identificador válido. En las variables (posiciones de memoria) se guardan los datos usados por el programa durante su ejecución. TODA variable debe ser DECLARADA antes de poder ser utilizada.
  • 3.
    Un identificador es simplemente el nombre que le vamos a dar a la variable, constante o función Para que un identificador sea válido debe: Iniciar con una letra del alfabeto inglés, o con el signo (_) No debe contener caracteres especiales, tales como @, $, # Después de la primera letra puede contener más letras del alfabeto inglés, números, o el carácter (_) NO DEBE haber espacios en blanco en los identificadores C diferencia mayúsculas de minúsculas, entonces no es lo mismo declarar la variable numero que Numero o NuMeRo Existen palabras propias del lenguaje (palabras reservadas) que no pueden ser usadas como identificadores ej: if, do
  • 4.
    Ejemplos de identificadoresválidos y no válidos No Válidos Válidos ñumero numero @hola _hola Peso neto Peso_neto 1radio radio1 if si
  • 5.
    Tipos de variablesVariables globales: son las que se declaran después del llamado a las cabeceras, pero antes de cualquier función, y son útiles para cualquier parte del programa. Variables locales: son las que se declaran dentro de una función, y solo sirven para ser usadas dentro de esa función.
  • 6.
    Tipos de datosLos tipos de datos definen los métodos de almacenamiento disponibles para representar información, junto con la manera en que dicha información ha de ser interpretada. Los tipos de datos son indispensables para la declaración de variables. En C tenemos diferentes tipos de datos:
  • 7.
    Tipos de datos(I) Tipo Bytes Desde Hasta void Es nulo (NULL) no retorna nada signed char 1 -128 127 unsigned char 1 0 255 signed short 2 -32768 32767 unsigned short 2 0 65535 signed int 2 -32768 32767
  • 8.
    Tipos de datos(II) Tipo Bytes Desde Hasta unsigned int 2 0 65535 signed long 4 -2147483648 2147483647 unsigned long 4 0 4294967295 float 4 3,4x10 -38 3,4x10 38 double 8 1,7x10 -308 1,7x10 308 long double 10 3,4x10 -4932 3,4x10 4932
  • 9.
    Nota sobre lostipos de datos: si omitimos las palabras “signed” o “unsigned” al declarar un tipo de dato, el compilador automáticamente asume por default que es un tipo “signed”; es decir que si al declarar el tipo de dato simplemente colocamos, por ejemplo, “int”, entonces el compilador asumirá que hemos declarado un “signed int”
  • 10.
    Para declarar variablesglobales: //llamado a las cabeceras Tipo_dato1 variable1, variable2, … , variablen; Tipo_dato2 variable3, variable4, … , variablem; //declaración de funciones{…} Ejemplo: #include<stdio.h> char caracter; float iva,total_pagar,descuento; unsigned long pvc,tcd; void main(){ … //instrucciones; ... } Estas variables van a servir en cualquier parte del programa
  • 11.
    Para declarar variableslocales: //llamado a las cabeceras //declaración de una función{ Tipo_dato1 variable1, variable2, … , variablen; Tipo_dato2 variable3, variable4, … , variablem; } Ejemplo: #include<stdio.h> void main(){ int numero,edad,cantidad; float iva,total_pagar,descuento; unsigned long pvc,tcd; //instrucciones; ... } Estas variables van a servir solo en la función main()
  • 12.
    ¿Qué son lasconstantes? Son aquellos valores que, una vez compilado el programa, no pueden ser cambiados. Al definir las constantes, debemos tomar en cuenta las siguientes REGLAS DE CONVERSIÓN DE TIPOS DE DATOS:
  • 13.
    Reglas de conversiónde tipos de datos I Una constante entera (sin parte decimal) es tomada como tal, a menos que se la añadan las letras F ó L (mayúsculas ó minúsculas) ejemplos : 1 : tomada como entera (int) 12f : tomada como flotante (float) 456L : tomada como doble larga (long double) Una variable con parte decimal es tomada siempre como DOUBLE, salvo que se la siga de la letra F ó L 2.0 : tomada como doble (double) 3.56F : tomada como flotante (float) 1.007L : tomada como flotante larga (long float)
  • 14.
    Reglas de conversiónde tipos de datos II Si en cualquiera de los casos anteriores agregamos la letra U ó u la constante queda calificada como UNSIGNED: 86u : tomada como entera sin signo (unsigned int) 32.44632UL : tomada como doble larga sin signo (unsigned long double) Una variable numérica que comienza con &quot;0&quot; (cero) es tomado como OCTAL asi : 012 equivale a 10 unidades en numeración decimal Una variable numérica que comienza con &quot;0x&quot; ó &quot;0X&quot; (cero – equis) es tomada como HEXADECIMAL asi : 0x16 equivale a 22 unidades en numeración decimal
  • 15.
    Para declarar constantes: //llamado a las cabeceras #define constante1 valor1; #define constante2 valor2; … //declaración de una función{ } Ejemplo: #include<stdio.h> #define PI 3.141592 //constante double #define OCTAL 017 //constante octal #define FLOTANTE 14F //constante flotante Void main(){ … //instrucciones; ... } Estas constantes sirven en cualquier parte del programa
  • 16.
    Operadores Aritméticos enC Operador Nombre Ejemplo + Suma a+b - Resta a-b * Multiplicación a*b / División a/b % Residuo entero de la división a%b ++ Incremento en 1 a++ -- Decremento en 1 a--
  • 17.
    Operadores Relacionales enC Operador Nombre Ejemplo > Mayor que a>b < Menor que a<b >= Mayor o igual que a>=b <= Menor o igual que a<=b == Igual (Equivalente) a==b != Diferente (No es igual) a!=b
  • 18.
    Operadores Lógicos enC Operador Nombre Ejemplo Devuelve cierto si: && Y (and) (exp1)&& (exp2) ambas son verdaderas || O (or) (exp1)|| (exp2) Una o ambas es verdadera ! No (not) !(exp1) Cambia el valor de la expresión
  • 19.
    Notas sobre losOperadores en C Los operadores aritméticos y relacionales pueden trabajar con variables o constantes de cualquier tipo numérico, como por ejemplo int, double, float, etc En los Operadores lógicos, exp1 y exp2 corresponden a EXPRESIONES LÓGICAS (Expresiones que pueden tomar los valores de verdadero o falso). Ejemplo: (7<2)||(4>3)
  • 20.
    Caracteres de conversiónmás usados de scanf(); y printf(); (I) Carácter Significado %c El dato es carácter %d El dato es entero %e El dato es valor en coma flotante %f El dato es valor en coma flotante %g El dato es valor en coma flotante %h El dato es entero corto
  • 21.
    Caracteres de conversiónmás usados de scanf(); y printf(); (II) Carácter Significado %i El dato es entero decimal, octal o hexadecimal %o El dato es octal %s El dato es cadena de caracteres, seguido de espacio en blanco y del carácter fin de línea (\0) %u El dato es entero decimal sin signo %x El dato es entero hexadecimal
  • 22.
    Caracteres de conversiónmás usados de scanf(); y printf(); (III) Ejemplo: int a,b; char letra; float area; printf(“%c ,%i, %f, %i”,letra,a,area,b);
  • 23.
    Secuencias de Escape(I) Carácter Código Valor ASCII Campana (alerta) \a 007 Retroceso (espacio atrás) \b 008 Tabulador horizontal \t 009 Nueva línea \n 010 Tabulador vertical \v 011 Nueva página \f 012
  • 24.
    Secuencias de Escape(II) Carácter Código Valor ASCII Retorno de carro \r 013 Comillas (“) \” 034 Interrogación (?) \? 039 Barra invertida \ \ 063 Fin de línea \0 092 Número octal \ooo 000