在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
函数分别获取复数的实部和虚部,并进行输出。