复数的基本运算C语言.doc

上传人:scccc 文档编号:12281774 上传时间:2021-12-03 格式:DOC 页数:6 大小:27.50KB
返回 下载 相关 举报
复数的基本运算C语言.doc_第1页
第1页 / 共6页
复数的基本运算C语言.doc_第2页
第2页 / 共6页
复数的基本运算C语言.doc_第3页
第3页 / 共6页
复数的基本运算C语言.doc_第4页
第4页 / 共6页
复数的基本运算C语言.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《复数的基本运算C语言.doc》由会员分享,可在线阅读,更多相关《复数的基本运算C语言.doc(6页珍藏版)》请在三一文库上搜索。

1、构造二元组求和运算#include<stdio.h> #include<stdlib.h>typedefstructfushu/ 抽象数据类型定义 floatreal;/ 数据对象floatimage;fushu; fushuComplexNumberInput(floata,floatb)/fushuc;c.real=a;/ 实部c.image=b;/ 虚部return(c);fushuComplexNumberAdd(fushuc1,fushuc2)/ fushusum;sum.real=c1.real+c2.real;sum.image=c1.image+c2.i

2、mage;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.image*c2.image;Mul.image=c1.real*c2.image+c1.image*c2.real; return(Mul);fushuComplex

3、NumberDiv(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.real*c2.real+c2.image*c2.image;if(d2!=0&&d4!=0) div.real=d1/d2; div.image=d3/d4; return(div);elsediv.real=0;div.image

4、=0; return(div); voidComplexNumberOutput(fushuc)/ 输出运算结果 if(c.real=0.0&&c.image=0.0)printf("0n");if(c.real=0.0&&c.image!=0.0)printf("%fin",c.image)Jif(c.real!=0.0&&c.image=0.0)printf("%fn",c.real);if(c.real!=0.0&&c.image!=0.0)printf("

5、;%f+(%fi)n",c.r eal,c.image);voidmain()/ 主函数intchoice;intk;floata1,a2,b1,b2; structfushuc1,c2,sum,sub,mult,div;printf(" 欢迎进行复数的基本代数运算 n");printf("1: 复数加法运算 n");printf("2: 复数减法运算 n");printf("3: 复数乘法运算 n");printf("4: 复数除法运算 n");printf("0: 推出系

6、统 n");printf(" 请分别输入第一个复数的实部和虚部 :"); scanf("%f%f",&a1,&b1);c1=ComplexNumberInput(a1,b1);printf(" 第一个复数为 :");ComplexNumberOutput(c1);printf(" 请分别输入第二个复数的实部和虚部 :"); scanf("%f%f",&a2,&b2);c2=ComplexNumberInput(a2,b2);printf(" 第

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

8、:"); ComplexNumberOutput(sub); break;case3:mult=ComplexNumberMul(c1,c2); printf(" 求积后结果为 :"); ComplexNumberOutput(mult); break;case4:div=ComplexNumberDiv(c1,c2); if(div.real!=0&&div.image!=0)printf(" 求商后结果 :");ComplexNumberOutput(div);break;elsen");printf(" 除零错误,请重新输入第二个复数; k=0;exit(k);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1