Como faço para inserir cada número do vetor em um nó e endereço diferente? Só consigo inserir um número:
#include <stdio.h>
#include <stdlib.h>
typedef struct lista {
float info;
struct lista *prox;
}Lista;
Lista *Cria(void){
return NULL;
}
Lista *Insere(float *v,int tam,Lista *p){
int count = 0;
Lista *nova;
nova = malloc(sizeof(Lista));
for(count; count <= tam-1; count++){
printf("%f\n",v[count]);
nova->info = v[count];
nova->prox = p;
}
p = nova;
return p;
}
Lista *Concatena(Lista *L1, Lista *L2){
while(L1->prox != NULL){
L1 = L1->prox;
if(L1->prox == NULL){
L1->prox = L2;
return L1;
}
}
}
void Imprime(Lista *p){
for(; p!=NULL; p = p->prox){
printf("END: %p - VALOR: %f - PROX END: %p\n\n",p,p->info,p->prox);
}
}
main(){
float v1[3] = {1.0,4.5,2.1}, v2[2] = {9.8,7.2};
int tamv1 = sizeof(v1)/sizeof(float), tamv2 = sizeof(v2)/sizeof(float);
Lista *L1, *L2;
L1 = Cria();
L2 = Cria();
if((L1 == NULL) && (L2 == NULL)){
printf("LISTAS (1 e 2) VAZIAS\n");
printf("INSERINDO OS VALORES NAS LISTAS..\n\n");
L1 = Insere(v1,tamv1,L1);
L2 = Insere(v2,tamv2,L2);
L1 = Concatena(L1,L2);
Imprime(L1);
} else {
printf("\nAS LISTAS (1 e 2) CONTÉM VALORES\n\n");
}
}