复数问题
题目;输入两行。每行两个整数,第一行 a , b(a>=0,b>=0)分别表示第 一个数的实部和虚部,第二行两个数 c,d (c>=0,d>=0)分别表示第二 个数的实部和虚部。 ★数据输出 输出结果占一行,输出两个复数相加后的结果,结果需要满足手 写规则。
程序
- # include<stdio.h>
- int main()
- {
- long int a,b,c,d,x,y;
- scanf("%ld %ld\n%ld %ld",&a,&b,&c,&d);
- x=a+c;
- y=b+d;
- if(y!=0)
- {
- if(x==0)
- {
- if(y==1)
- printf("i");
- else
- printf("%di",y);
- }
- else
- {
- if(y==1)
- printf("%d+i",x);
- else
- printf("%d+%di",x,y);
- }
- }
- else
- {
- if(x==0)
- printf("0");
- else
- printf("%d",x);
- }
- return 0;
- }
- 复数中的特殊情况 a+bi 当a=0,b!=0时又分为 b等不等于1
- 当a=0,b=0时
- 当a!=0,b=0时
- 当a!=0,b!=0时 又分为b等不等于1