Asignar valores de Matriz con For

Iniciado por socorroz, 25 Octubre 2016, 01:02 AM

0 Miembros y 1 Visitante están viendo este tema.

socorroz

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!!

fary

#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.
Un byte a la izquierda.

MAFUS

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.

fary

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.
Un byte a la izquierda.

socorroz

#4
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);
}    

}