Buenas, estoy leyendo sobre matrices y he terminado haciendo un ejemplo yo mismo gracias a lo que he aprendido hasta ahora, la cosa es que el output del programa no es lo que espero, vengo por un poco de ayuda:
#include <stdio.h>
/* Asignar a una matriz[10]
asignado valores del 1 al 10
usando un loop for*/
main()
{
int i, j;
int matriz[9];
for (i = 0; i < 10; ++i) //i<10=9
for (j = 1; j < 11; ++j) //j<11=10
matriz[i] = j;
printf(" Valor de Matriz[%d] equvale = %d",i, j);
}
El output del programa es: Valor de Matriz[0] equvale = 0
y no Lo que espero que sería una lista con todos los valores de cada Matriz
Gracias por su ayda!!
#include <stdio.h>
int main() // Inidica que tipo de valor va a retornar la función
{
int i, j;
int matriz[9]; // va desde el 0 hasta el 9. No del 1 al 10!!!!!!
for (i = 0; i < 10; ++i) //i<10=9
{// Te faltaban los corchetes
for (j = 0; j < 9; ++j) //j<9=10
{ // te faltaban los corchetes
matriz[i] = j;
printf(" Valor de Matriz[%d] equvale = %d\n",i, j);
}
}
}
saludos.
En el primer for i < 10 está mal, se sale del límite. Debe ser i < 9.
El segundo for sobra. Todos los miembros del array tendrán el número 10.
Cita de: MAFUS en 25 Octubre 2016, 15:26 PM
En el primer for i < 10 está mal, se sale del límite. Debe ser i < 9.
El segundo for sobra. Todos los miembros del array tendrán el número 10.
Cierto lo del 9!!! :rolleyes:
Lo del for, pues ya lo note yo :xD pero bueno el usuario así lo planteo, obviamente no tiene sentido.
saludos.
He aquí el arreglo, funciona ::)
#include <stdio.h>
/* Asignar a una matriz[9]
valores comenzando del 1
usando un loop for*/
int main()
{
int i, cont;
int matriz[9];
cont = 0;
for (i = 0; i < 9; ++i) //
{
matriz[i] = ++cont;
printf("Valor de Matriz[%d] igual %d \n", i, cont);
}
}