歪:我半天没有读懂题目是啥意思
注意:当A或者B小于0但是大于-0.005(比如-0.00001)时候,如果用printf("%.2f",a)函数输出,会输出“-0.00”这样的结果,事实上应该输出“0.00”,这一点要特殊处理(why?)
#include<bits/stdc++.h>
using namespace std;
int main(){
double r1,p1,r2,p2,a,b;
cin>>r1>>p1>>r2>>p2;
a=r1*r2*cos(p1)*cos(p2)-r1*r2*sin(p1)*sin(p2);
b=r1*r2*cos(p1)*sin(p2)+r1*r2*sin(p1)*cos(p2);
if(a<0&&a>=-0.005)
printf("0.00");
else
printf("%.2f",a);
if(b>=0)
printf("+%.2fi",b);
else if(b>=-0.005&&b<0)
printf("+0.00i");
else
printf("%.2fi",b);
return 0;
}