void adiciona(struct pessoa *raiz){//Aqui temos apenas como localizar a pessoa cujos pais serão adicionados char *nome; struct ponteiro k; printf("Adicionar os pais de quem?"); gets(nome); notemordem(raiz, k , nome); k.ponteiro->nome=nome; insira(k.ponteiro);//Aqui mandamos o filho para a inserção dos pais }
int main() { setlocale(LC_ALL, "Portuguese"); insira(); a = aaaa-1900; b = a/4; bissexto(); c = meses[mm-1]; d = dd; e = (a + b + c + d) % 7; system("cls"); dia_semana(e); printf("O dia da semana foi %s.\n", *d[e]); system("pause"); getch(); return 0; }
void main(){ char nome[10]; char nome1[10]; char nome2[10]; int d; char i,h; struct ponteiro p; struct ponteiro q; struct pessoa *raiz=(struct pessoa *)malloc(sizeof(struct pessoa));//Alocamos memoria para a raiz da arvore printf("Qual a primeira pessoa da arvore genealógica?\n"); gets(nome); raiz->nome=nome; raiz->geracao = 0; printf("%s\n", raiz->nome); insira(raiz);//Começamos a raiz propriamente aqui printf("Adicionar mais alguem? <S/N>"); scanf("%c", &h); if(h=='S' || h=='s'){ adiciona(raiz); } printf("Deseja fazer mais alguma coisa? \n1-)imprimir os membros por geracao \n2-)imprimir os antepassados de alguem \n "); printf("3-) imprimir labelled bracketing \n4-) calcular grau de parentesco \n5-) encerrar programa\n");//Aqui temos o menu scanf("%c",&i); if(i='1'){ printf("Qual geracao?"); scanf("%i", &d); print_gen(raiz,d); } else if(i='2'){ printf("De quem?"); gets(nome); emordem(raiz); } else if(i='3'){ imprimir_lb(raiz); } else if(i='4'){ printf("Pessoa 1:"); gets(nome1); printf("Pessoa 2"); gets(nome2); if(p.ponteiro->geracao > q.ponteiro->geracao){ grau(q.ponteiro, p.ponteiro, q.ponteiro->geracao); }else{ grau(p.ponteiro,q.ponteiro, p.ponteiro->geracao); } } else{ printf("Bye Bye"); } }