在C語言中,可以使用結構體來定義復數。復數可以表示為實數部分和虛數部分的和。可以使用兩個浮點數變量來表示復數的實數部分和虛數部分。
下面是一個示例代碼,定義了一個復數的結構體:
typedef struct {
float real; // 實數部分
float imaginary; // 虛數部分
} Complex;
使用上述結構體定義了一個復數類型的變量后,可以進行各種復數的運算,例如加法、減法、乘法、除法等。
以下是一些示例代碼:
#include <stdio.h>
// 定義復數結構體
typedef struct {
float real;
float imaginary;
} Complex;
// 復數加法
Complex add(Complex c1, Complex c2) {
Complex result;
result.real = c1.real + c2.real;
result.imaginary = c1.imaginary + c2.imaginary;
return result;
}
// 復數減法
Complex subtract(Complex c1, Complex c2) {
Complex result;
result.real = c1.real - c2.real;
result.imaginary = c1.imaginary - c2.imaginary;
return result;
}
int main() {
Complex c1 = {3.0, 2.0};
Complex c2 = {1.5, 4.5};
Complex sum = add(c1, c2); // 復數相加
Complex difference = subtract(c1, c2); // 復數相減
printf("Sum: %.2f + %.2fi\n", sum.real, sum.imaginary);
printf("Difference: %.2f + %.2fi\n", difference.real, difference.imaginary);
return 0;
}
輸出結果:
Sum: 4.50 + 6.50i
Difference: 1.50 - 2.50i
以上代碼中,定義了一個復數結構體Complex
,并實現了復數的加法和減法操作。在main
函數中,定義了兩個復數c1
和c2
,然后分別調用add
和subtract
函數進行復數的加法和減法運算,并將結果打印輸出。