Hola, buenos dias,
Tengo un problema con el siguiente codigo:
void IngresoDatos (int [5][3], int, int);
.
.
.
void IngresoDatos (int M[5][3], int F, int C)
{
int i, j;
for(i=0;i<=F;i++)
{
for(j=0;j<=C;i++)
{
printf("\nIngrese numero: \n\n");
scanf("%d",&M[j]);
}
}
}
El problema esta en que en vez de ingresar 15 elementos (5x3) ingresan 25.
Gracias!
Cambia el "menor o Igual que" por solo "Menor que"
Saludos
Gracias por tu respuesta, pero aun sigue sin funcionar.
Saludos!
Y que parte de tu código no funciona?
Tal vez lo estas invocando mal.
Saludos!
Hola!
#include <stdio.h>
void IngresoDatos (int [5][3], int, int);
int main()
{
int M[5][3];
ingresodatos(M, 4, 2)
return 0;
}
void IngresoDatos (int M[5][3], int F, int C)
{
int i, j;
for(i=0;i<=F;i++)
{
for(j=0;j<=C;i++)
{
printf("\nIngrese numero: \n\n");
scanf("%d",&M[j]);
}
}
}
Cita de: AlbertoBSD en 17 Agosto 2016, 21:42 PM
Cambia el "menor o Igual que" por solo "Menor que"
Ya te lo habia dicho y no hicistes los cambios que te comente.
Tambien tienes problemas para acceder a los elementos, estas leyendo asi:
scanf("%d",&M[j]);
y deberia de ser:
scanf("%d",&M[i][j]);
Asi debe de ser con eso lee 15 elementos
#include <stdio.h>
void IngresoDatos (int [5][3], int, int);
int main()
{
int M[5][3];
ingresodatos(M, 5, 3)
return 0;
}
void IngresoDatos (int M[5][3], int F, int C)
{
int i, j;
for(i=0;i<F;i++)
{
for(j=0;j<C;i++)
{
printf("\nIngrese numero: \n\n");
scanf("%d",&M[i][j]);
}
}
}
Saludos
Aparte del &M[i][j]
que te ha comentado AlbertoBSD, el problema está aquí:
for(j=0;j<C;i++)
Debería ser j++ no i++, si no incrementas j nunca, se queda en un bucle infinito.
Muchas gracias a todos!