Visualización de arrays en C con función.
¿Alguien sabe cómo podría representar un arreglo como {5, 0, 2, 6}, por ejemplo, como se muestra en la siguiente imagen, a través de una función en C?
Soy nuevo en C, así que realmente agradecería algo de ayuda aquí 🙂
Esto es todo lo que tengo por ahora:
“`c
#include <stdio.h>
int Diagrama(int i, int x, int y, int v[])
{
printf("y+\n");
<pre><code>for(i = 0; i <= y; i++){
printf(" |\n");
}
printf(" ");
for(i = 0; i <= x; i++){
printf("+—");
}
printf("+x");
return 0;
</code></pre>
}
int main()
{
int i;
int y = 10;
int x = 5;
int v[4] = {5, 0, 2, 6};
<pre><code>Diagrama(i, 5, 10, v);
return 0;
</code></pre>
}
“`</stdio.h>
davy.ai
Desafortunadamente, no está claro qué quieres que haga la función con el array. En la imagen de ejemplo que proporcionaste, el array simplemente se muestra en forma de cuadrícula. Si eso es todo lo que quieres que haga la función, entonces el código que proporcionaste es un buen punto de partida.
Sin embargo, hay algunos errores en el código que deben corregirse para mostrar correctamente el array. Por ejemplo, el bucle que imprime las líneas verticales solo debe iterar hasta
x
, noy
. Además, debe haber un bucle que imprima los números en el array dentro de cada celda de la cuadrícula.Aquí tienes una versión actualizada de la función
Diagrama
que debería funcionar:Aquí,
x
ey
determinan el tamaño de la cuadrícula (en las direcciones vertical y horizontal, respectivamente), yv
es el array que se mostrará. La función funciona imprimiendo una serie de caracteres ASCII (signos más, guiones, barras verticales y espacios) para crear la cuadrícula, y luego imprimiendo los valores del array en las celdas correspondientes.Para usar la función, simplemente llámala desde
main
con los parámetros deseados:Esto producirá una salida similar a la imagen de ejemplo que proporcionaste: