复数的基本运算(C语言)

复数的基本运算(C语言)

ID:43350395

大小:29.00 KB

页数:3页

时间:2019-09-30

复数的基本运算(C语言)_第1页
复数的基本运算(C语言)_第2页
复数的基本运算(C语言)_第3页
资源描述:

《复数的基本运算(C语言)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、#include#includetypedefstructfushu//抽象数据类型定义{floatreal;//数据对象floatimage;}fushu;fushuComplexNumberInput(floata,floatb)//构造二元组{fushuc;c.real=a;//实部c.image=b;//虚部return(c);}fushuComplexNumberAdd(fushuc1,fushuc2)//求和运算{fushusum;sum.real=c1.re

2、al+c2.real;sum.image=c1.image+c2.image;return(sum);}fushuComplexNumberSub(fushuc1,fushuc2)//求差运算{fushusub;sub.real=c1.real-c2.real;sub.image=c1.image-c2.image;return(sub);}fushuComplexNumberMul(fushuc1,fushuc2)//求积运算{fushuMul;Mul.real=c1.real*c2.real-c1.ima

3、ge*c2.image;Mul.image=c1.real*c2.image+c1.image*c2.real;return(Mul);}fushuComplexNumberDiv(fushuc1,fushuc2)//求商运算{fushudiv;floatd1,d2,d3,d4;d1=c1.real*c2.real+c1.image*c2.image;d2=c2.real*c2.real+c2.image*c2.image;d3=c1.image*c2.real-c1.real*c2.image;d4=c2.

4、real*c2.real+c2.image*c2.image;if(d2!=0&&d4!=0){div.real=d1/d2;div.image=d3/d4;return(div);}else{div.real=0;div.image=0;return(div);}}voidComplexNumberOutput(fushuc)//输出运算结果{if(c.real==0.0&&c.image==0.0)printf("0");if(c.real==0.0&&c.image!=0.0)printf("%fi

5、",c.image);if(c.real!=0.0&&c.image==0.0)printf("%f",c.real);if(c.real!=0.0&&c.image!=0.0)printf("%f+(%fi)",c.real,c.image);}voidmain()//主函数{intchoice;intk;floata1,a2,b1,b2;structfushuc1,c2,sum,sub,mult,div;printf("欢迎进行复数的基本代数运算");printf("1:复数加法运算"

6、);printf("2:复数减法运算");printf("3:复数乘法运算");printf("4:复数除法运算");printf("0:推出系统");printf("请分别输入第一个复数的实部和虚部:");scanf("%f%f",&a1,&b1);c1=ComplexNumberInput(a1,b1);printf("第一个复数为:");ComplexNumberOutput(c1);printf("请分别输入第二个复数的实部和虚部:");scanf("%f%f",&a2,&b2);c2

7、=ComplexNumberInput(a2,b2);printf("第二个复数为:");ComplexNumberOutput(c2);for(;;){printf("请输入你选择的功能:");scanf("%d",&choice);switch(choice){case0:exit(0);break;case1:sum=ComplexNumberAdd(c1,c2);printf("求和后结果为:");ComplexNumberOutput(sum);break;case2:sub=ComplexNumb

8、erSub(c1,c2);printf("求差后结果为:");ComplexNumberOutput(sub);break;case3:mult=ComplexNumberMul(c1,c2);printf("求积后结果为:");ComplexNumberOutput(mult);break;case4:div=ComplexNumberDiv(c1,c2);if(div.real!=0&&div.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。