C语言如何创建一个复数
时间: 2024-09-06 16:01:41 浏览: 43
C 代码 将双精度复数 (C8) 变量定义为结构, 并实现某些相应的基本函数.rar
在C语言中,虽然标准库并没有直接提供复数类型的定义,但是我们可以自定义结构体来表示复数。下面是一个简单的例子:
```c
#include <stdio.h>
#include <stdlib.h>
// 定义复数结构体
typedef struct {
double real; // 实部
double imag; // 虚部
} Complex;
// 初始化复数
Complex* create_complex(double real, double imag) {
Complex* c = (Complex*)malloc(sizeof(Complex));
if (c != NULL) {
c->real = real;
c->imag = imag;
}
return c;
}
// 打印复数
void print_complex(Complex* c) {
printf("Complex: (%f + %fi)\n", c->real, c->imag);
}
int main() {
Complex* num1 = create_complex(3.0, 4.0); // 创建一个复数3 + 4i
print_complex(num1);
free(num1); // 释放内存
return 0;
}
```
在这个示例中,我们首先定义了一个名为`Complex`的结构体,包含实部`real`和虚部`imag`两个成员。然后创建了一个函数`create_complex`用于初始化复数,并通过`print_complex`函数打印出来。
阅读全文