在C語(yǔ)言中,可以使用<complex.h>
頭文件中提供的數(shù)據(jù)類(lèi)型和函數(shù)來(lái)進(jìn)行復(fù)數(shù)的運(yùn)算。復(fù)數(shù)數(shù)據(jù)類(lèi)型是double complex
,可以使用creal()
和cimag()
函數(shù)來(lái)獲取復(fù)數(shù)的實(shí)部和虛部。
以下是一些常用的復(fù)數(shù)運(yùn)算函數(shù):
c = a + b;
c = a - b;
c = a * b;
c = a / b;
double mod = cabs(c);
c = conj(a);
c = cpow(a, n);
示例代碼:
#include <stdio.h>
#include <complex.h>
int main() {
double complex a = 1.0 + 2.0*I;
double complex b = 3.0 - 4.0*I;
double complex c;
c = a + b;
printf("a + b = %.2f + %.2fi\n", creal(c), cimag(c));
c = a * b;
printf("a * b = %.2f + %.2fi\n", creal(c), cimag(c));
c = conj(a);
printf("Conjugate of a = %.2f + %.2fi\n", creal(c), cimag(c));
return 0;
}
注意:在使用復(fù)數(shù)庫(kù)時(shí),需要在編譯時(shí)鏈接數(shù)學(xué)庫(kù)-lm
,例如gcc program.c -o program -lm
。