1
0
mirror of https://github.com/renbaoshuo/202401-programming-assignments.git synced 2024-12-16 15:44:39 +00:00
202401-programming-assignments/【实践课内】12.函数3/6-1 使用函数计算两个复数之和与之积.md

1.7 KiB

6-1 使用函数计算两个复数之和与之积

若两个复数分别为:complex1 = real1 + imag1 icomplex2 = real2 + imag2 i,则

它们的和为:complex1 + complex2 = (real1 + real2) + (imag1 + imag2) i

它们的乘积为:complex1 * complex2 = (real1 * real2 - imag1 * imag2) + (real1 * imag2 + real2 * imag1) i

本题要求实现两个函数分别计算两个复数之和、两个复数之积。

函数接口定义:

void complex_add (double real1, double imag1, double real2, double imag2);
void complex_prod (double real1, double imag1, double real2, double imag2);

其中用户传入的参数为两个复数real1 + imag1 ireal2 + imag2 i;函数complex_add和函数complex_prod应将计算结果的实部存放在全局变量result_real中、虚部存放在全局变量result_imag中。

裁判测试程序样例:

#include <stdio.h> 

double result_real, result_imag;
void complex_add(double real1, double imag1, double real2, double imag2);
void complex_prod(double x1, double y1, double x2, double y2);

int main(void) 
{ 
    double imag1, imag2, real1, real2;    

    scanf("%lf %lf", &real1, &imag1);             
    scanf("%lf %lf", &real2, &imag2); 
    complex_add(real1, imag1, real2, imag2);
    printf("addition of complex is (%f)+(%f)i\n", result_real, result_imag);
    complex_prod(real1, imag1, real2, imag2); 
    printf("product of complex is (%f)+(%f)i\n", result_real, result_imag);
    
    return 0;
}

/* 请在这里填写答案 */

输入样例:

1 1
-2 3

输出样例:

addition of complex is (-1.000000)+(4.000000)i
product of complex is (-5.000000)+(1.000000)i