1. Estructura
1.1. Estas estructuras de datos son adecuadas para situaciones en las que el acceso a los datos se realice de forma aleatoria e impredecible. Por el contrario, si los elementos pueden estar ordenados y se va a utilizar acceso secuencial sería más adecuado utilizar una lista, ya que esta estructura puede cambiar de tamaño fácilmente durante la ejecución de un programa.
1.1.1. Cada elemento del vector es accedido mediante el nombre del vector y un subíndice que representa la posición numérica (entero no negativo) de dicho elemento dentro del vector.
2. Ejemplo
2.1. /* * Ejemplo : El producto escalar de dos vectores */ #include <stdio.h> double producto_escalar(double v1[], double v2[], int d); int main() { const int largo = 3; double vector_1[] = {5,1,0}; double vector_2[] = {-1,5,3}; double resultado = producto_escalar(vector_1, vector_2, largo); // imprime el resultado printf("(%f, %f, %f) . (%f, %f, %f) = %f\n", vector_1[0], vector_1[1], vector_1[2], vector_2[0], vector_2[1], vector_2[2], resultado); return 0; }
2.1.1. /* producto escalar entre dos vectores */ double producto_escalar(double v1[], double v2[], int d) { double resultado = 0; int i; for (i=0; i < d; i++) { resultado += v1[i] * v2[i]; } return resultado; }
3. MATRICES
3.1. ¿Que son?
3.1.1. Son arreglos con dos dimensiones, es decir se puede decir que tienen filas y columnas.
4. Son utilizados para almacenar múltiples valores en una única variable.
5. ¿Qué son?
5.1. Son una forma de almacenar datos que permiten contener una serie de valores del mismo tipo.
5.1.1. En C la cantidad de elementos que podrá contener un vector es fijo, y en principio se define cuando se declara el vector.
6. Declaración
6.1. tipo_elemento nombre[largo];
6.1.1. Ejemplos
6.1.1.1. int my_vector1[10]; float my_vector2[25]; string my_vector3[500]; bool my_vector4[1000]; char my_vector5[2];