estructura con arreglo dinamico + pila en c
Publicado por Jeremias (1 intervención) el 14/06/2017 02:10:48
este es el programa que debo hacer.
ejemplo de examen: se desea crear un arreglo dinamico de enteros
el tamaño y los elementos se toman del teclado. se pide crear con ellos
una pila dinamica, recorrerlo y mostrar su contenido en pantalla.
como se hace para declarar en un struct un arreglo dinamico donde su longitud sera indicada en el main??
yo lo pense de la siguiente forma y no compilo, si se les ocurre otra forma de reolverlo por favor diganme.
desde ya gracias y saludos
ejemplo de examen: se desea crear un arreglo dinamico de enteros
el tamaño y los elementos se toman del teclado. se pide crear con ellos
una pila dinamica, recorrerlo y mostrar su contenido en pantalla.
como se hace para declarar en un struct un arreglo dinamico donde su longitud sera indicada en el main??
yo lo pense de la siguiente forma y no compilo, si se les ocurre otra forma de reolverlo por favor diganme.
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include<stdio.h>
#include<stdlib.h>
struct nodo{
int long;
int arreglo=(int*)malloc(sizeof(*p)); // supuesta struct con arreglo dinamico
struct nodo *psig;
}; //nodo
int mian(){
int d,seguir,i=0,j,l;
struct nodo *p,*base;
base=NULL;
while(seguir==0){ //crfeacion del nodo
i=i+1;
print("Ingrese 0 para cargar el nodo %d: ",i);
scanf("%d",&seguir);
if(seguir==0){
p=(struct nodo*)malloc(sizeof(*p));
printf("tamaño del vector del nodo %d: ",i);
scanf("%d",&d);
for(j=0;j<d;j++){
printf("Elemento %d del areglo: ");
scanf("%d",&p->arreglo);
}
p->long=d;
p->psig=base;
base=p;
}
else
print("finalizo la carga de nodos, se procede con la impresion de la pila\n\n");
}
p=base;
while(p!=NULL){ //imprimr la pila
l=p->long;
for(i=0;i<l;i++){
print("%d\t",p->arreglo)
}
p=p->psig;
printf("\n");
}
return 0;
}
desde ya gracias y saludos
Valora esta pregunta
0