c语言complex
1. c语言中的complex.h问题
根据错误列表,问题关键就在于你这个c文件找不到那个头文件#include <complex.h>,导致了变量cx、cy等,以及函数creal、cimag等函数都在编译的时候被认为是没有声明/定义的。所以,估计在complex.h头文件里面声明了这些变量名和函数,你只要把这个头文件放到你的工程文件的正确位置就行了。
2. C语言关于复数
#include<stdio.h>
typedefstruct{
floatr;
floati;
}Complex;
ComplexreadComlexNumber(){
Complexn;
printf("Inputrealpart:");
scanf("%f",&n.r);
printf("Inputimaginarypart:");
scanf("%f",&n.i);
returnn;
}
ComplexsumComplex(Complexa,Complexb){
Complexc;
c.r=a.r+b.r;
c.i=a.i+b.i;
returnc;
}
ComplexdiffereneComplex(Complexa,Complexb){
Complexc;
c.r=a.r-b.r;
c.i=a.i-b.i;
returnc;
}
ComplexmultiplyComplex(Complexa,Complexb){
Complexc;
c.i=a.r*b.i+a.i*b.r;
c.r=a.r*b.r-a.i*b.i;
returnc;
}
ComplexdivideComplex(Complexa,Complexb){
Complexc;
c.r=(a.r*b.r+a.i*b.i)/(b.r*b.r+b.i*b.i);
c.i=(a.i*b.r-a.r*b.i)/(b.r*b.r+b.i*b.i);
returnc;
}
voidprintComplex(Complexn){
printf("%.2f+%.2fi",n.r,n.i);
}
intmain(){
Complexa,b,c;
printf("InputComplexnumbera: ");
a=readComlexNumber();
printf("InputComplexnumberb: ");
b=readComlexNumber();
printf("The2Complexa&bis: ");
printComplex(a);printf("and");printComplex(b);
//sum
c=sumComplex(a,b);
printf(" (a+b)=");printComplex(c);
//diff
c=differeneComplex(a,b);
printf(" (a-b)=");printComplex(c);
//multiply
c=multiplyComplex(a,b);
printf(" (a*b)=");printComplex(c);
//divide
c=divideComplex(a,b);
printf(" (a/b)=");printComplex(c);
return0;
}
3. -complex在C语言中是什么意思呀!
-complex在C语言中是用来表示复数。
C99标准中定义的复数类型如下:float_Complex; float_Imaginary; double_Complex; double_Imaginary; long double_Complex; long double_Imaginary.
头文件中定义了complex和imaginary宏,并将它们扩展为_Complex和_Imaginary,因此在编写新的应用程序时,应该使用头文件中的complex和imaginary宏。
(3)c语言complex扩展阅读
complex的使用:
float_ Complex;
float_ Imaginary;
double_ .Complex ;
double_ Imaginary;
long double_ Complex;
long double_ Imaginary.
4. C语言中Complex怎么用
、_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类型在任何环境下都是可选的。目前的编译器对这两种类型的支持都不太好。