在C语言的complex.h库中,可以使用double complex类型来表示复数。要输入一个复数,可以使用scanf函数或者直接给变量赋值。
下面是使用scanf函数输入复数的示例代码:
#include <stdio.h>
#include <complex.h>
int main() {
double real, imag;
printf("输入实部和虚部,用空格或换行隔开:");
scanf("%lf %lf", &real, &imag);
double complex num = real + imag * I;
printf("输入的复数为:%.2f + %.2fi\n", creal(num), cimag(num));
return 0;
}
在上面的示例中,首先声明了一个变量real和imag作为实部和虚部的输入变量。然后使用scanf函数从用户输入中读取两个double类型的值,并分别存储到real和imag变量中。接下来,使用real和imag计算出复数,并赋值给double complex类型的变量num。最后,使用creal和cimag函数分别获取复数的实部和虚部,并进行输出。
你也可以直接给变量赋值来输入一个复数:
#include <stdio.h>
#include <complex.h>
int main() {
double complex num = 3.5 + 2.7 * I;
printf("输入的复数为:%.2f + %.2fi\n", creal(num), cimag(num));
return 0;
}
在上面的示例中,直接将3.5 + 2.7 * I赋值给double complex类型的变量num,然后使用creal和cimag函数分别获取复数的实部和虚部,并进行输出。