Dev - C++ - Me ayudan a pasar un arreglo bidimensional a funcion

 
Vista:
sin imagen de perfil
Val: 33
Ha disminuido su posición en 4 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Me ayudan a pasar un arreglo bidimensional a funcion

Publicado por Jorge (24 intervenciones) el 16/10/2020 11:12:50
Bueno muestro el codigo nesesito pasar un arreglo bidimensional a una funcion, pero nesesito modificar ese arreglo bi declarado en el main desde la funcion y no se la sintaxis, en el codigo lo muestro como si lo hiciera para un arreglo normal y no da me ayudan

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
void ver(int *c);
main()
{
	int nums[2][2]={0};
 
	for(int a=0;a<2;a++){ \\ LENO AL ARREGLO
		for(int b=0;b<2;b++){
			scanf("%d",&nums[a][b]);
		}
	}
	printf("EL ARREGLO ES \n");
 
	ver(nums);
}
 
void ver(int *c){
	for(int a=0;a<2;a++){
		for(int b=0;b<2;b++){
			printf("%d",c[a][b]);
		}
	}
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Me ayudan a pasar un arreglo bidimensional a funcion

Publicado por Nacho (181 intervenciones) el 16/10/2020 12:53:18
La función espera recibir un puntero a un int y le pasas una matriz, por eso da error.

Hay unas cuantas maneras de hacer eso bien. Por ejemplo, sin usar punteros.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <stdio.h>
 
void ver(int c[2][2]);
 
int main()
{
    int nums[2][2] = { 0 };
 
    for (int a = 0; a < 2; a++) {   // LENO AL ARREGLO
            for (int b = 0; b < 2; b++) {
                scanf("%d", &nums[a][b]);
            }
    }
    printf("EL ARREGLO ES \n");
    ver(nums);
}
 
void ver(int c[2][2]) {
    for (int a = 0; a < 2; a++) {
        for (int b = 0; b < 2; b++) {
            printf("%d", c[a][b]);
        }
    }
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 33
Ha disminuido su posición en 4 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Me ayudan a pasar un arreglo bidimensional a funcion

Publicado por Jorge (24 intervenciones) el 16/10/2020 13:15:54
si bro, pero ahora quiero modificar los valores del arreglo en la funcion como hago, como envio el arreglo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Me ayudan a pasar un arreglo bidimensional a funcion

Publicado por Nacho (181 intervenciones) el 16/10/2020 13:33:18
Por ejemplo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <stdio.h>
void ver(int c[2][2]);
void cambiar(int c[2][2]);
 
int main()
{
    int nums[2][2] = { 0 };
 
    for (int a = 0; a < 2; a++) {
        // LENO AL ARREGLO
            for (int b = 0; b < 2; b++) {
                scanf("%d", &nums[a][b]);
            }
    }
    printf("EL ARREGLO ES \n");
    cambiar(nums);
    ver(nums);
}
 
void ver(int c[2][2]) {
    for (int a = 0; a < 2; a++) {
        for (int b = 0; b < 2; b++) {
            printf("%d", c[a][b]);
        }
    }
}
 
void cambiar(int c[2][2])
{
    c[0][1] = 7;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar