用C语言定义虚数的子函数并可执行
时间: 2024-03-01 19:52:38 浏览: 18
好的,以下是一个用C语言定义虚数的子函数的示例代码:
```c
#include <stdio.h>
#include <math.h>
typedef struct {
float real;
float imag;
} complex;
complex add(complex a, complex b) {
complex c;
c.real = a.real + b.real;
c.imag = a.imag + b.imag;
return c;
}
complex sub(complex a, complex b) {
complex c;
c.real = a.real - b.real;
c.imag = a.imag - b.imag;
return c;
}
complex mul(complex a, complex b) {
complex c;
c.real = a.real * b.real - a.imag * b.imag;
c.imag = a.real * b.imag + a.imag * b.real;
return c;
}
complex div(complex a, complex b) {
complex c;
float d = b.real * b.real + b.imag * b.imag;
c.real = (a.real * b.real + a.imag * b.imag) / d;
c.imag = (a.imag * b.real - a.real * b.imag) / d;
return c;
}
void print(complex c) {
if (c.imag >= 0) {
printf("%.2f + %.2fi\n", c.real, c.imag);
} else {
printf("%.2f - %.2fi\n", c.real, fabs(c.imag));
}
}
int main() {
complex a = {3, 4};
complex b = {1, -2};
printf("a + b = ");
print(add(a, b));
printf("a - b = ");
print(sub(a, b));
printf("a * b = ");
print(mul(a, b));
printf("a / b = ");
print(div(a, b));
return 0;
}
```
这个程序定义了一个名为 `complex` 的结构体,其中包含了实部和虚部两个成员变量。接着定义了四个子函数,分别是加、减、乘、除四种基本运算。最后在主函数中定义了两个虚数,分别进行了四种基本运算,并输出结果。你可以将这段代码保存为一个 .c 文件,然后通过编译器进行编译,生成可执行文件。