/**********************************************************************

Exemplo simples para structs.  Este programa pede dois numeros
complexos como entrada e devolve a sua soma.

**********************************************************************/
#include <stdio.h>

typedef struct {
  double Re;
  double Im;
} Complexo;

Complexo pegue_complexo()
{
  Complexo z;

  printf("Entre a parte real: ");
  scanf("%lf", &z.Re);
  printf("Entre a parte imaginaria: ");
  scanf("%lf", &z.Im);

  return z;
}

void imprima_complexo(Complexo z)
{
  printf("Parte real = %.3lf\n", z.Re);
  printf("Parte imaginaria = %.3lf\n", z.Im);
}
     
main()
{
  Complexo z1, z2, z3;

  z1=pegue_complexo();
  z2=pegue_complexo();

  z3.Re=z1.Re+z2.Re;
  z3.Im=z1.Im+z2.Im;

  imprima_complexo(z3);

  return 0;
}
