home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 10 / 10.iso / m / m003_1 / sb_bc.ddi / BC / CH4 / PROG4-1.C next >
Encoding:
C/C++ Source or Header  |  1991-12-10  |  919 b   |  61 lines

  1. //  PROG4-1.C
  2.  
  3. #include<stdio.h>
  4.  
  5. typedef struct
  6. { double real ;
  7.   double imag ;
  8. } complex ;
  9.  
  10.  
  11. complex ComplexSet(double r, double i)
  12. { complex temp ;
  13.  
  14.   temp.real = r ;
  15.   temp.imag = i ;
  16.  
  17.   return temp ;
  18. }
  19.  
  20.  
  21. complex ComplexAdd(complex c1, complex c2)
  22. { complex temp ;
  23.  
  24.   temp.real = c1.real + c2.real ;
  25.   temp.imag = c1.imag + c2.imag ;
  26.  
  27.   return temp ;
  28. }
  29.  
  30.  
  31. complex ComplexSub(complex c1, complex c2)
  32. { complex temp ;
  33.  
  34.   temp.real = c1.real - c2.real ;
  35.   temp.imag = c1.imag - c2.imag ;
  36.  
  37.   return temp ;
  38. }
  39.  
  40.  
  41. void ComplexPrint(complex c)
  42. {
  43.   printf("%g + %g i", c.real, c.imag) ;
  44. }
  45.  
  46.  
  47. int main()
  48. { complex a,b,c,d ;
  49.  
  50.   a = ComplexSet(1.0, 2.0) ;
  51.   b = ComplexSet(3.0, 4.0) ;
  52.  
  53.   c = ComplexAdd(a,b) ;
  54.   printf("c = ") ; ComplexPrint(c) ; printf("\n") ;
  55.  
  56.   d = ComplexAdd(a, ComplexSub(b,c)) ;
  57.   printf("d = ") ; ComplexPrint(d) ; printf("\n") ;
  58.  
  59.   return 0 ;
  60. }
  61.