c语言没有头文件<complex.h>改成下面程序还是不行!
/*Program2.17Workingwithcomplexnumbers*/#include<stdio.h>#include<complex>usingnamesp...
/* Program 2.17 Working with complex numbers */
#include <stdio.h>
#include<complex>
using namespace std;
int main(void)
{
double complex cx = 1.0 + 3.0*I;
double complex cy = 1.0 - 4.0*I;
printf("Working with complex numbers:");
printf("\nStarting values: cx = %.2f%+.2fi cy = %.2f%+.2fi",
creal(cx), cimag(cx), creal(cy), cimag(cy));
double complex sum = cx+cy;
printf("\n\nThe sum cx + cy = %.2f%+.2fi",
creal(sum),cimag(sum));
double complex difference = cx-cy;
printf("\n\nThe difference cx - cy = %.2f%+.2fi", creal(difference),cimag(difference));
double complex product = cx*cy;
printf("\n\nThe product cx * cy = %.2f%+.2fi",
creal(product),cimag(product));
double complex quotient = cx/cy;
printf("\n\nThe quotient cx / cy = %.2f%+.2fi",
creal(quotient),cimag(quotient));
double complex conjugate = conj(cx);
printf("\n\nThe conjugate of cx = %.2f%+.2fi",
creal(conjugate) ,cimag(conjugate));
return 0;
} 展开
#include <stdio.h>
#include<complex>
using namespace std;
int main(void)
{
double complex cx = 1.0 + 3.0*I;
double complex cy = 1.0 - 4.0*I;
printf("Working with complex numbers:");
printf("\nStarting values: cx = %.2f%+.2fi cy = %.2f%+.2fi",
creal(cx), cimag(cx), creal(cy), cimag(cy));
double complex sum = cx+cy;
printf("\n\nThe sum cx + cy = %.2f%+.2fi",
creal(sum),cimag(sum));
double complex difference = cx-cy;
printf("\n\nThe difference cx - cy = %.2f%+.2fi", creal(difference),cimag(difference));
double complex product = cx*cy;
printf("\n\nThe product cx * cy = %.2f%+.2fi",
creal(product),cimag(product));
double complex quotient = cx/cy;
printf("\n\nThe quotient cx / cy = %.2f%+.2fi",
creal(quotient),cimag(quotient));
double complex conjugate = conj(cx);
printf("\n\nThe conjugate of cx = %.2f%+.2fi",
creal(conjugate) ,cimag(conjugate));
return 0;
} 展开
2个回答
展开全部
complex <double> cx(1.0, 3.0);
complex <double> cy(1.0, -4.0);
printf("Working with complex numbers:");
printf("\nStarting values: cx = %.2f+%.2fi cy = %.2f+%.2fi",
cx.real(), cx.imag(), cy.real(), cy.imag());
后面以此类推
更多追问追答
追问
还是没有解决,没有头文件!
追答
#include<complex>
using namespace std;
就这样啊 不要.h 就是 #include <complex>
展开全部
1、_Complex是一种新增的数据类型,用来表示复数。C99
新增了复数类型(_Complex)和虚数类型(_Imaginary)。简单来说,C99 提供了三种复数类型:float
_Complex,double _Complex,和 long double _Complex。对于 float
_Complex类型的变量来说,它包含两个 float类型的值,一个用于表示复数的实部(real
part),另一个用于表示虚部(imaginary part)。类似地,double _Complex 包含两个 double类型的值。C99
也提供了三种虚数类型:float _Imaginary,double _Imaginary,以及 long double
_Imaginary。虚数类型只有虚部,没有实部。
2、包含标准头文件 complex.h 后,就可以用 complex来代表 _Complex,用imaginary来代表 _Imaginary,以及用 I来代表虚数单位 i,也就是 -1的平方根。例如:
#include <complex.h>
double _Complex x = 5.2;
double complex y = 5.0 * I;
double complex z = 5.2 – 5.0 * I;
3、
注意:_Complex类型对于独立式环境(freestanding
environment)来说是可选的。可选的意思是,不强制必须支持这种类型。而所谓独立式环境,是指 C
程序可以在没有操作系统的情况下运行。_Imaginary类型在任何环境下都是可选的。目前的编译器对这两种类型的支持都不太好。
新增了复数类型(_Complex)和虚数类型(_Imaginary)。简单来说,C99 提供了三种复数类型:float
_Complex,double _Complex,和 long double _Complex。对于 float
_Complex类型的变量来说,它包含两个 float类型的值,一个用于表示复数的实部(real
part),另一个用于表示虚部(imaginary part)。类似地,double _Complex 包含两个 double类型的值。C99
也提供了三种虚数类型:float _Imaginary,double _Imaginary,以及 long double
_Imaginary。虚数类型只有虚部,没有实部。
2、包含标准头文件 complex.h 后,就可以用 complex来代表 _Complex,用imaginary来代表 _Imaginary,以及用 I来代表虚数单位 i,也就是 -1的平方根。例如:
#include <complex.h>
double _Complex x = 5.2;
double complex y = 5.0 * I;
double complex z = 5.2 – 5.0 * I;
3、
注意:_Complex类型对于独立式环境(freestanding
environment)来说是可选的。可选的意思是,不强制必须支持这种类型。而所谓独立式环境,是指 C
程序可以在没有操作系统的情况下运行。_Imaginary类型在任何环境下都是可选的。目前的编译器对这两种类型的支持都不太好。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询