Programación en C Datos y variables

Ariel Mora

Temas

  • Variables
    • Uso
    • Sintaxis
  • Datos básicos
    • Numéricos
    • Alfanuméricos
  • Operaciones
  • Conversión

Variables

Es como un "cajón"

Permite guardar datos para usarlos luego

Tienen un nombre único

Tienen un tipo específico

Variables

Cómo utilizarlas

 

 


tipo nombre = dato;

Datos

C maneja distintos tipos de datos

Estos datos pueden ser:

  • Numéricos
  • Alfanuméricos

Datos numéricos

Permiten expresar valores numéricos

  • Números enteros (sin decimales)
  • Números flotantes (con decimales)

Números enteros

El tipo básico es int

 

 

 

Rango: -2,147,483,648 a 2,147,483,648


int numeroEntero = 15;

Números enteros

Para imprimir un dato de tipo int

 

#include <stdio.h>

int main(){
    int numeroEntero = 15;

    printf("%d\n", numeroEntero);

}

Números enteros

Si se ocupa trabajar con números pequeños se usa short

 

 

 

Rango: -32,768 a 32,768


short numeroPequeno = 1;

Números enteros

Para imprimir un dato de tipo short

 

#include <stdio.h>

int main(){
    short numeroPequeno = 1;

    printf("%d\n", numeroPequeno);

}

Números enteros

Si se ocupa trabajar con números grandes se usa long

 

 

 

Rango: -9,223,372,036,854,775,808 a 9,223,372,036,854,775,808


long numeroGrande = 489615;

Números enteros

Para imprimir un dato de tipo long

 

#include <stdio.h>

int main(){
    long numeroGrande = 4865789;

    printf("%ld\n", numeroEntero);

}

Números flotantes

El tipo básico de número flotante es float

 

 

 


float numeroFlotante = 3.14;

Números flotantes

Para imprimir un dato de tipo float

 

#include <stdio.h>

int main(){
    float numeroFlotante = 3.1459265;

    printf("%f\n", numeroFlotante);
    printf("%.4f\n", numeroFlotante); //imprime solo cuatro decimales
}

Números flotantes

En caso de ocupar más precisión se utiliza double

 

 

 


double numeroPreciso = 3.146748962;

Números flotantes

Para imprimir un dato de tipo double

 

#include <stdio.h>

int main(){

    double numeroPreciso = 3.14679895;

    printf("%f\n", numeroPreciso);

}

Números sin signo

En caso de no ocupar números negativos se usa

la palabra unsigned al inicio

 

 

 


unsigned int numeroEntero = 15;
unsigned short numeroPequeno = 1;
unsigned long numeroGrande = 485156589;

Números sin signo

Para imprimir un número sin signo

 

#include <stdio.h>

int main(){
    unsigned int numeroEntero = 15;

    printf("%u\n", numeroEntero);

}

Datos alfanuméricos

Permiten expresar valores con letras y numeros

  • Letras
  • Palabras u oraciones

 

 

Letras

Para usar una letra o un símbolo uso char

 

 

 


char letra = 'a';
char simbolo = '?';

Letras

Para imprimir un dato de tipo char

 

#include <stdio.h>

int main(){
    char letra = 'a';

    printf("%c\n", letra);

}

Palabras u oraciones

Para usar una palabra o una oración uso char*

 

 

 


char* palabra = "Hola";
char* oracion = "Hola mundo";
char saludo[5] = "Hola";

Palabras u oraciones

Para imprimir un dato de tipo char*

 

#include <stdio.h>

int main(){
    char* oracion = "Hola mundo";

    printf("%s\n", oracion);

}

Operaciones matemáticas

En C se pueden realizar las siguientes operaciones:

  • Suma
  • Resta
  • Multiplicación
  • División
  • Módulo (Resto de la división)

 

 

Operaciones matemáticas

#include <stdio.h>

int main(){
    int numero1 = 15;
    int numero2 = 2

    int suma = numero1 + numero2;
    int resta = numero1 - numero2;
    int multiplicacion = numero1 * numero2;
    int division = numero1 / numero2;
    int modulo = numero1 % numero2;
}

Lectura de datos

C permite leer datos por medio de las siguientes funciones:

  • scanf
  • fgets

 

 

 

scanf

Permite leer datos de múltiples tipos

Su uso es similar a printf

 

 

 


scanf("%indicador", variable);

scanf

#include <stdio.h>

int main(){
    int numeroEntero;                //no es necesario definir un valor inicial
    float numeroFlotante;
    char palabra[20];                //define la cantidad máxima de caracteres

    scanf("%d\n", &numeroEntero);    //por la forma de lectura es necesario
    scanf("%f\n", &numeroFlotante);  //agregar un '&' antes de variables numericas
    scanf("%s\n", palabra);          //solo lee una palabra
}

fgets

Permite leer datos como strings

Puede leer datos desde el teclado, archivos, entre otros

 

 


fgets(variable, tamañoMaximoDeCaracteres, fuente);

fgets

#include <stdio.h>

int main(){
    char palabras[25];            //se define el tamano de los datos a leer

    fgets(palabras, 25, stdin);   //stdin indica que se va a leer desde el teclado
}

String a números

Es posible convertir un string a valores númericos

Esto se puede hacer por medio de las funciones:

  • atoi
  • atol
  • atof

Estas funciones son de la biblioteca stdlib

 

atoi

Convierte de un string a un int

 

 

 


int numeroEntero = atoi(string);

atoi

#include <stdio.h>
#include <stdlib.h>

int main(){
    char dato[25];
    int numeroEntero = 15;

    scanf("%s", dato);
    numeroEntero = atoi(dato);
    printf("%d\n", numeroEntero);
}

atol

Convierte de un string a un int

 

 

 


long numeroGrande = atol(string);

atol

#include <stdio.h>
#include <stdlib.h>

int main(){
    char dato[25];
    long numeroGrande;

    scanf("%s", dato);
    numeroGrande = atol(dato);
    printf("%ld\n", numeroGrande);
}

atof

Convierte de un string a un flotante

 

 

 


double numeroFlotante = atof(string);

atof

#include <stdio.h>
#include <stdlib.h>

int main(){
    char dato[25];
    double numeroFlotante = 15;

    scanf("%s", dato);
    numeroFlotante = atof(dato);
    printf("%f\n", numeroFlotante);
}

Programación en C - Datos y variables

By Ari Mora

Programación en C - Datos y variables

  • 185