概述
部分图片来自复数乘法(复数运算公式大全) - 红豆博客
如题ヽ(゜▽゜ )因为比较简单就直接给示例了。
这里输入的是复数 a+bi 中的实部 a 和虚部 b。
首先我们要知道复数的运算是如何的:
加和减:
乘:
除:
代码如下:
#include<stdio.h>
typedef struct complex
{
float real;
float imag;
}COMPLEX;
void input(COMPLEX *s1,char *c,COMPLEX *s2);
void output(COMPLEX a,COMPLEX b,COMPLEX s,char c);
COMPLEX add(COMPLEX str1,COMPLEX str2);
COMPLEX sub(COMPLEX str1,COMPLEX str2);
COMPLEX mul(COMPLEX str1,COMPLEX str2);
COMPLEX div(COMPLEX str1,COMPLEX str2);
main ()
{
COMPLEX a,b,s;
char c;
printf ("请输入两个复数和一个运算符(用空格隔开):n");
input(&a,&c,&b);
if (c=='+')
s=add(a,b);
if (c=='-')
s=sub(a,b);
if (c=='*')
s=mul(a,b);
if (c=='/')
s=div(a,b);
output(a,b,s,c);
}
void input(COMPLEX *s1,char *c,COMPLEX *s2)
{
scanf ("%f %f %c %f %f",&s1->real,&s1->imag,c,&s2->real,&s2->imag);
}
COMPLEX add(COMPLEX str1,COMPLEX str2)
{
COMPLEX ad;
ad.real=str1.real+str2.real;
ad.imag=str1.imag+str2.imag;
return ad;
}
COMPLEX sub(COMPLEX str1,COMPLEX str2)
{
COMPLEX su;
su.real=str1.real-str2.real;
su.imag=str1.imag-str2.imag;
return su;
}
COMPLEX mul(COMPLEX str1,COMPLEX str2)
{
COMPLEX mu;
mu.real=(str1.real*str2.real)-(str1.imag*str2.imag);
mu.imag=(str1.real*str2.imag)+(str1.imag*str2.real);
return mu;
}
COMPLEX div(COMPLEX str1,COMPLEX str2)
{
COMPLEX di;
di.real=(str1.real*str2.real+str1.imag*str2.imag)/(str2.real*str2.real+str2.imag*str2.imag);
di.imag=(str1.imag*str2.real-str1.real*str2.imag)/(str2.real*str2.real+str2.imag*str2.imag);
return di;
}
void output(COMPLEX a,COMPLEX b,COMPLEX s,char c)
{
if (b.real==0&&b.imag==0)
printf ("errorn");
else
{
printf ("运算结果显示:n");
if (a.imag>0||b.imag>0)
printf ("(%.1f+%.1fi) %c (%.1f%.1fi) = ",a.real,a.imag,c,b.real,b.imag);
else
printf ("(%.1f%.1fi) %c (%.1f%.1fi) = ",a.real,a.imag,c,b.real,b.imag);
if (s.imag>0)
printf ("(%.1f+%.1fi)n",s.real,s.imag);
else
printf ("(%.1f%.1fi)n",s.real,s.imag);
}
}
运行结果:
复数加法:
复数减法:
复数乘法:
复数除法:
无法运算:
以上! (欢迎评论互动)
最后
以上就是老迟到冬日为你收集整理的C语言_用结构体类型实现复数的加、减、乘、除运算,每种运算用函数完成的全部内容,希望文章能够帮你解决C语言_用结构体类型实现复数的加、减、乘、除运算,每种运算用函数完成所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复