admin 管理员组文章数量: 1086019
2024年3月11日发(作者:正则匹配字符前后几个字符)
用c语言编程计算复数
一、复数的四则运算
二、复数的头文件#include
三、一些碎碎念
(1)计算方法
加法:(a+bi)+(c+di)=(a+c)+(c+d)i【实部与实部相加,虚部与虚
步相加】
减法:(a+bi)-(c+di)=(a-c)+(c-d)i【实部与实部相减,虚部与虚
步相减】
乘法:(a+bi)(c+di)=ac+adi+cdi+bdi*i=(ac-bd)+(bc+ad)i【普通
的多项式相乘;i^2=-1】
除法:(a+bi)/(c+di)=(a+bi)
(c-di)/((c+di)(c+di))=((ac+bd)+(bc-ad)i)/(c^2+d^2)【分子分母同时
乘以分母的共轭复数,然后上边是乘法,下边也是乘法】
(2)例题:本题要求编写程序,计算2个复数的和、差、积、商。
输入在一行中按照a1 b1 a2 b2的格式给出2个复数C1=a1+b1i和
C2=a2+b2i的实部和虚部。题目保证C2不为0。
分别在4行中按照(a1+b1i) 运算符 (a2+b2i) = 结果的格式顺序输
出2个复数的和、差、积、商,数字精确到小数点后1位。如果结果的实
部或者虚部为0,则不输出。如果结果为0,则输出0.0。
(1)C语言中有三个类型可以存储复数
float_Complex:实部和虚部都为float类型
— 1 —
double_Complex:实部和虚部都为double类型
long double_Complex:实部和虚部都为long类型
例如:double_Complex x;
注:C99对复数的支持,用这种定义方法不需要任何头文件。
(2)加入头文件#include
_Complex,这个头文件把虚部定义为'I',所以定义定义这样一个复数可以
这样float complex z=a+bI;
(3)宏
宏名称 值
complex _Complex
_Complex_I 虚数单位,类型为const float_Complex
I _Complex_I
这里的I代替Complex_I可以类比bool(#include
和Bool一样
复数的赋值方法如:doubel complex dc=2.0+3.5*I;
(4)几个函数
real_part=creal(z);//得到Z的实部
imag_part=cimag(z)//得到Z的虚部
在处理float和long double类型时,用crealf()和
creall(),cimagf()和cimagl()。【理解:以double complex为基准】
3.延展:允许复数有乘除绝对值操作,但是必须有CX_LIMITED_RANGE
的编译提示
— 2 —
版权声明:本文标题:用c语言编程计算复数 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1710145922a559498.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论