【C语言编程5】复数计算器
C语言编程
本程序的功能是一个简单的复数计算器
功能包括复数的乘法,复数的除法,复数的模计算
乘法法则
复数的乘法法则:把两个复数相乘,类似两个多项式相乘,结果中i^2= -1,把实部与虚部分别合并。两个复数的积仍然是一个复数。
除法法则
复数除法定义:满足 的复数 叫复数a+bi除以复数c+di的商。
运算方法:将分子和分母同时乘以分母的共轭复数,再用乘法法则运算,
即(分母实数化)。
复数的模
将复数的实部与虚部的平方和的正的平方根的值称为该复数的模,记作∣z∣.
代码如下
#include<stdio.h>
#include<math.h>
//复数计算器
double a, b, c, d, e, f;
void multi()//复数乘法
{
printf("输入第一个数的实部\n");
scanf("%lf", &a);
printf("输入第一个数的虚部\n");
scanf("%lf", &b);
printf("输入第二个数的实部\n");
scanf("%lf", &c);
printf("输入第二个数的虚部\n");
scanf("%lf", &d);
e = a * c - b * d;
f = a * d + b * c;
printf("等于%lf + i%lf\n", e, f);
}
void div()//复数除法
{
printf("输入第一个数的实部\n");
scanf("%lf", &a);
printf("输入第一个数的虚部\n");
scanf("%lf", &b);
printf("输入第二个数的实部\n");
scanf("%lf", &c);
printf("输入第二个数的虚部\n");
scanf("%lf", &d);
e = (a * c + b * d) / (c * c + d * d);
f = (b * c - a * d) / (c * c + d * d);
printf("等于%lf + i%lf\n", e, f);
}
void len()
{
printf("输入数的实部\n");
scanf("%lf", &a);
printf("输入数的虚部\n");
scanf("%lf", &b);
e = a * a + b * b;
f = sqrt(e);
printf("模长为%lf\n", f);
}
int main()
{
int i;
while(1)
{
printf("输1做乘法,输2做除法,输入3求模长\n");
scanf("%d", &i);
if(i == 1)
multi();
else if(i == 2)
div();
else if(i == 3)
len();
else
break;
}
return 0;
}
运行结果示例