martes, 28 de febrero de 2017

Inicializacion de vectores

Los vectores pueden inicializarse, en la linea de declaración o aparte, de las siguientes formas.

Caso Vector entero:

Forma 1: Declarar vector entero e inicializarlo en la misma linea.
Para inicializar se coloca el simbolo = seguido de un par de llaves, entre las llaves va el valor de cada posición del vector separados por comas.

Codigo:
//*********************************************************************
#include <stdio.h>
int main(){
    int i;
    int vec[5]={96,85,34,32,1};
    for(i=0;i<5;i++)
        printf(" %d ",vec[i]);
}
//*********************************************************************


Forma 2: Declarar vector entero e inicializarlo después.
Se declara el vector y luego se inicializa cada posición del vector colocando el nombre del vector con el número de índice entre corchetes seguido del símbolo = y el valor que se le va a asignar.

Codigo:
//*********************************************************************
#include <stdio.h>
int main(){
    int i;
    int vec[5];
    vec[0]=96;
    vec[1]=85;
    vec[2]=34;
    vec[3]=32;
    vec[4]=1;
    for(i=0;i<5;i++)
        printf(" %d ",vec[i]);
    return 0;
}

//*********************************************************************
Salida para los dos codigos:

Caso Vector Real:

Forma 1: Declarar vector real e inicializarlo en la misma linea.
Igual que para los enteros, los reales se inicializan colocando el símbolo = seguido de un par de llaves y entre ellas los valores de cada posición del vector separados por comas.

Codigo:
//*********************************************************************
#include <stdio.h>
int main(){
    int j;
    float vec[5]={2.34,6.01,5.33,6.32,7.98};
    for(j=0;j<5;j++)
        printf(" %.2f ",vec[j]);
    return 0;
}
//*********************************************************************

Forma 2: Declarar vector real e inicializarlo después.
Se declara el vector y en otra linea se inicializa cada posición escribiendo el nombre del vector con su respectivo índice entre corchetes, seguido del símbolo = y el valor que se le va a asignar.

Codigo:
//*********************************************************************
#include <stdio.h>
int main(){
    int j;
    float vec[5];
    vec[0]=2.34;
    vec[1]=6.01;
    vec[2]=5.33;
    vec[3]=6.32;
    vec[4]=7.98;
    for(j=0;j<5;j++)
        printf(" %.2f ",vec[j]);
    return 0;
}
//*********************************************************************
Salida para los dos codigos:

Caso Vector de Caracteres:

Forma 1: Declarar vector de caracteres e inicializarlo en la misma linea.
Es muy parecida a los casos anteriores, solo que esta vez los caracteres que se van a asignar deben ir entre comillas simples.

Codigo:
//*********************************************************************
#include <stdio.h>
int main(){
    int t;
    char vec[5]={'h','e','i','d','y'};
    for(t=0;t<5;t++)
        printf(" %c ",vec[t]);
    return 0;
}
//*********************************************************************


Forma 2: Declarar vector de caracteres e inicializarlo en la misma linea.
Codigo:
//*********************************************************************
#include <stdio.h>
int main(){
    int t;
    char vec[6]="heidy";
    for(t=0;t<5;t++)
        printf(" %c ",vec[t]);
    return 0;
}
//*********************************************************************


Forma 3: Declarar vector de caracteres e inicializarlo después.
Se declara el vector y aparte se inicializa cada posición, la única diferencia respecto a los casos anteriores es que el caracter asignado debe ir entre comillas simples.

Codigo:
//*********************************************************************
#include <stdio.h>
int main(){
    int t;
    char vec[6];
    vec[0]='h';
    vec[1]='e';
    vec[2]='i';
    vec[3]='d';
    vec[4]='y';
    for(t=0;t<5;t++)
        printf(" %c ",vec[t]);
    return 0;
}
//*********************************************************************
Salida para los tres codigos:

Caso Vector de Caracteres:

Forma 1: Declarar vector de cadena de caracteres e inicializarlo en la misma linea.
Es igual a los casos anteriores, pero ahora como se van a asignar cadenas, deben ir entre comillas dobles.

Codigo:
//*********************************************************************
#include <stdio.h>
int main(){
    int u;
    char vec[5][10]={"merida","tachira","trujillo","barinas","zulia"};
    for(u=0;u<5;u++)
        printf(" %s ",vec[u]);
    return 0;
}
//*********************************************************************

Forma 2: Declarar vector de caracteres e inicializarlo después.
Para este caso no se puede realizar de la misma manera que se trabajo anteriormente.
Esta expresión no es correcta: vec[0]="hola";
Para este caso se debe utilizar una de las funciones de la libreria string.h, llamada strcpy cuyo trabajo es copiar una cadena o variable, en otra variable.

Codigo:
//*********************************************************************
#include <stdio.h>
#include <string.h>
int main(){
    int u;
    char vec[5][10];
    strcpy(vec[0],"merida");
    strcpy(vec[1],"tachira");
    strcpy(vec[2],"trujillo");
    strcpy(vec[3],"barinas");
    strcpy(vec[4],"zulia");
    for(u=0;u<5;u++)
        printf(" %s ",vec[u]);
    return 0;
}
//*********************************************************************
Salida para los dos codigos:
 

No hay comentarios:

Publicar un comentario