C编程实现两个复数的加、减运算
时间: 2024-09-27 08:14:48 浏览: 35
C#中实现复数的加减运算
在C语言中,复数通常采用结构体表示,包括实部和虚部。下面是一个简单的例子展示了如何实现两个复数的加法和减法:
```c
#include <stdio.h>
#include <complex.h> // C99引入的库,用于处理复数
// 定义复数结构体
typedef struct {
double real; // 实部
double imag; // 虚部
} complex;
// 计算复数加法
complex add(complex c1, complex c2) {
complex result;
result.real = c1.real + c2.real;
result.imag = c1.imag + c2.imag;
return result;
}
// 计算复数减法
complex subtract(complex c1, complex c2) {
complex result;
result.real = c1.real - c2.real;
result.imag = c1.imag - c2.imag;
return result;
}
int main() {
complex num1 = {2.0, 3.0}; // 复数 2+3i
complex num2 = {4.0, -1.0}; // 复数 4-i
complex sum = add(num1, num2); // 加法结果
complex diff = subtract(num1, num2); // 减法结果
printf("Sum (2+3i) + (4-i): (%lf + %li)i\n", sum.real, sum.imag);
printf("Difference (2+3i) - (4-i): (%lf + %li)i\n", diff.real, diff.imag);
return 0;
}
```
在这个示例里,我们首先定义了一个`complex`结构体来存储复数,然后分别实现了加法和减法函数,这两个函数接受两个`complex`类型的参数并返回一个新的`complex`结构体。在`main`函数中,我们创建了两个复数,并计算它们的和与差。
阅读全文