C语言 PTA7

您所在的位置:网站首页 复数计算器c语言 C语言 PTA7

C语言 PTA7

2023-09-26 16:16| 来源: 网络整理| 查看: 265

复数是由两个实数分别作为实部和虚部构成的一个复合数,从另一个角度来说复数就是由两个实数构成的有序对,在C语言中适合用结构类型来表示复数。现在要求用结构类型

typedef struct { float x; float y; } Comp;

及其变量来表示与存储复数,编写程序实现复数的加减法运算。

输入格式:

在一行输入四个用空格分开的实数a1 b1 a2 b2分别表示复数c1 = a1 + b1i和c2 = a2 + b2i

输出格式:

复数的输出应符合数学上关于复数的表示习惯:实部与虚部都为零时只输出一个0.00; 有一个为零时,只输出非零的部分; 虚部为负时,例如3-4i,应输出为3.00-4.00i的形式,不要输出为3.00+-4.00i。实部与虚部均保留2位小数,例如3.00-4.00i 输出在两行进行,第一行输出求和的结果,第二行输出求差的结果。

输入样例: 5.00 4.00 3.00 2.00

结尾无空行

输出样例: 8.00+6.00i 2.00+2.00i

结尾无空行

#include typedef struct { float x; float y; } Comp; int main() { Comp jia, jian; float a1, b1, a2, b2; scanf("%f %f %f %f",&a1, &b1, &a2, &b2); jia.x = a1 + a2; jia.y = b1 + b2; jian.x = a1 - a2; jian.y = b1 - b2; if(jia.x == 0) if(jia.y == 0) printf("0.00\n"); else printf("%.2fi\n",jia.y); else if(jia.y == 0) printf("%.2f\n",jia.x); else if(jia.y < 0) printf("%.2f%.2fi\n",jia.x,jia.y); else printf("%.2f+%.2fi\n",jia.x,jia.y); if(jian.x == 0) if(jian.y == 0) printf("0.00"); else printf("%.2fi",jian.y); else if(jian.y == 0) printf("%.2f",jian.x); else if(jian.y < 0) printf("%.2f%.2fi\n",jian.x,jian.y); else printf("%.2f+%.2fi",jian.x,jian.y); }

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3