Hola. Os dejo una posible solución del ejercicio CU00515F del curso lenguajeC desde cero.
EJERCICIO
Crea el código de un programa que cumpla las siguientes premisas. Declara un array de elementos enteros y tres dimensiones denominado ventasEmpleadoOficinaEdificio. La primera dimensión tendrá 6 elementos, la segunda 10 y la tercera 2. Establece para el elemento con índices 3, 7, 2 un valor igual a 4234. A continuación haz que se muestre por pantalla (ventana de consola) el texto: “El empleado numero 3 de la oficina numero 7 del edificio numero 2 ha vendido 4234 unidades”, donde 4234 estará definido referenciando al elemento del array creado previamente.
El código del programa:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int ventasEmpleadoOficinaEdificio[6][10][2];
ventasEmpleadoOficinaEdificio[3][7][2]=4234;
printf("El empleado numero 3 de la oficina numero 7 del edificio numero 2 ha vendido: %d unidades\n", ventasEmpleadoOficinaEdificio[3][7][2]);
return 0;
}
Responde a estas preguntas:
a) ¿Cuántos elementos componen el array multidimensional?
Un elemento con los índices 3,7,2.
b) ¿Qué ocurre si intentamos mostrar por pantalla un valor con un índice que no está definido para ese array multidimensional?
Depende del compilador con el que estamos trabajando. Puede producirse un error a la hora de intentar compilar el código, puede ejecutarse el programa pero no imprimir nada por pantalla en el lugar del array con localizador no inicializado o puede imprimirse un valor impredecible.
c) Modifica el valor de productos vendidos para que pase a ser el valor anterior más diez. A continuación muestra el mismo mensaje que anteriormente. En esta ocasión, dado que hemos modificado el contenido, deberá mostrarse por pantalla: “El empleado numero 3 de la oficina numero 7 del edificio numero 2 ha vendido 4244 unidades”.
El código del programa:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int ventasEmpleadoOficinaEdificio[6][10][2];
ventasEmpleadoOficinaEdificio[3][7][2]=4234;
printf("El empleado numero 3 de la oficina numero 7 del edificio numero 2 ha vendido: %d unidades\n", ventasEmpleadoOficinaEdificio[3][7][2]);
ventasEmpleadoOficinaEdificio[3][7][2]=ventasEmpleadoOficinaEdificio[3][7][2]+10;
printf("El empleado numero 3 de la oficina numero 7 del edificio numero 2 ha vendido: %d unidades\n", ventasEmpleadoOficinaEdificio[3][7][2]);
return 0;
}
Gracias.