怎么给指针结构体数组赋值
#include <stdio.h>
#define N 27
#include <stdlib.h>
struct Donnees1{
char car;
float proba;
}Donnees[N];
typedef struct Donnees1 Donnees1;
char car1[]=" abcdefghijklmnopqrstuvwxyz";
;
float proba1[]={0.1834,0.0640,0.0064,0.0259,0.0260,0.1486,0.0078,0.0083,0.0061,0.0591,0.0023,0.0001,0.0465,0.0245,0.0623,0.0459,0.0256,0.0081,
0.0555,0.0697,0.0572,0.0506,0.0100,0.0001,0.0031,0.0021,0.0008};
void Donnees2(char car1[],float proba1[],Donnees1 *Donnees3){
int i;
for(i=0;i<N;i++){
Donnees3[i].car=car1[i];
Donnees3[i].proba=proba1[i];
}
}
struct arb{
struct arb *FG;
struct arb *FD;
char Etiquette;
float Poids;
};
typedef struct arb arb1;
struct foret{
arb1 *arb[N];
int nb;
};
typedef struct foret F1;
F1 F;
F1 initialiserforet(F1 F ,Donnees1 *Donnees){
int i;
for(i=0;i<27;i++){
F.arb[i]=(arb1 *)malloc(sizeof(arb1));
F.arb[i]->FG=NULL;
F.arb[i]->FD=NULL;
F.arb[i]->Etiquette=Donnees[i].car;
F.arb[i]->Poids=Donnees[i].proba;
}
return F;
}
int main(){
Donnees2(car1,proba1,Donnees);
int i;
for(i=0;i<N;i++){
printf("%c %f\n",Donnees[i].car,Donnees[i].proba);
}
initialiserforet(F,Donnees);
for(i=0;i<N;i++){
printf("%c %f\n",F.arb[i]->Etiquette,F.arb[i]->Poids);
};
return 0;
}
首先我给结构体数组Donnees 赋值 然后我想把Donnees 里面的数值赋值给指针结构体数组F.arb[N] 但是我运行不起来请问 我错在哪了 谢谢大家了先