c语言中利用结构体数据类型编程实现复数的加减运算
时间: 2024-12-29 07:35:22 浏览: 8
在C语言中,我们可以创建一个结构体来表示复数,包含实部(real)和虚部(imaginary)两个成员。以下是如何编写复数结构体以及对应的加法和减法操作:
```c
// 定义复数结构体
typedef struct {
double real; // 实部
double imaginary; // 虚部
} Complex;
// 加法函数,返回一个新的复数,其结果是两个输入复数的和
Complex addComplex(Complex a, Complex b) {
return (Complex) {a.real + b.real, a.imaginary + b.imaginary};
}
// 减法函数,同理,返回输入复数差的结果
Complex subtractComplex(Complex a, Complex b) {
return (Complex) {a.real - b.real, a.imaginary - b.imaginary};
}
// 示例:创建复数并进行加减运算
int main() {
Complex num1 = {3.0, 4.0}; // 复数3+4i
Complex num2 = {1.5, 2.0}; // 复数1.5+2i
Complex sum = addComplex(num1, num2); // 相加
Complex diff = subtractComplex(num1, num2); // 相减
printf("Sum of %f + %fi and %f + %fi is (%f + %fi)\n",
num1.real, num1.imaginary, num2.real, num2.imaginary,
sum.real, sum.imaginary);
printf("Difference between %f + %fi and %f + %fi is (%f + %fi)\n",
num1.real, num1.imaginary, num2.real, num2.imaginary,
diff.real, diff.imaginary);
return 0;
}
```
在这个例子中,我们首先定义了一个`Complex`结构体,并实现了`addComplex`和`subtractComplex`两个函数来进行复数的加减运算。在`main`函数中,展示了如何创建复数实例并进行计算。
阅读全文