7 36 複數四則運算 15分

2021-10-09 23:01:33 字數 3313 閱讀 6732

本題要求編寫程式,計算2個複數的和、差、積、商。

輸入格式:

輸入在一行中按照a1 b1 a2 b2的格式給出2個複數c1=a1+b1i和c2=a2+b2i的實部和虛部。題目保證c2不為0。

輸出格式:

分別在4行中按照(a1+b1i) 運算子 (a2+b2i) = 結果的格式順序輸出2個複數的和、差、積、商,數字精確到小數點後1位。如果結果的實部或者虛部為0,則不輸出。如果結果為0,則輸出0.0。

輸入樣例1:

2

3.08

-2.04

5.06

輸出樣例1:
(

2.0+

3.1i)+(

-2.0

+5.1i)

=8.1i

(2.0

+3.1i)-(

-2.0

+5.1i)

=4.0

-2.0i

(2.0

+3.1i)*(

-2.0

+5.1i)=-

19.7

+3.8i

(2.0

+3.1i)/(

-2.0

+5.1i)

=0.4

-0.6i

輸入樣例2:
11-

1-1.01

輸出樣例2:
(

1.0+

1.0i)+(

-1.0

-1.0i)

=0.0

(1.0

+1.0i)-(

-1.0

-1.0i)

=2.0

+2.0i

(1.0

+1.0i)*(

-1.0

-1.0i)=-

2.0i

(1.0

+1.0i)/(

-1.0

-1.0i)=-

1.0

**及注釋:

1、如果在輸出之前不對 result 進行四捨五入,則輸出結果會出現問題

2、負數的四捨五入需要注意

3、虛數的輸出可使用%+.1f格式

#include

void

my_print

(float a1,

float b1,

float a2,

float b2,

char symbol,

float

*result)

;void

my_add

(float a1,

float b1,

float a2,

float b2,

float

*result)

;void

my_sub

(float a1,

float b1,

float a2,

float b2,

float

*result)

;void

my_mul

(float a1,

float b1,

float a2,

float b2,

float

*result)

;void

my_div

(float a1,

float b1,

float a2,

float b2,

float

*result)

;void

my_round

(float

*result)

;int

main()

;//result[0]:實部,result[1]:虛部

char add =

'+', sub =

'-', mul =

'*', div =

'/';

scanf

("%f %f %f %f"

,&a1,

&b1,

&a2,

&b2)

;my_add

(a1, b1, a2, b2, result)

;my_print

(a1, b1, a2, b2, add, result)

;my_sub

(a1, b1, a2, b2, result)

;my_print

(a1, b1, a2, b2, sub, result)

;my_mul

(a1, b1, a2, b2, result)

;my_print

(a1, b1, a2, b2, mul, result)

;my_div

(a1, b1, a2, b2, result)

;my_print

(a1, b1, a2, b2, div, result)

;return0;

}//輸出

void

my_print

(float a1,

float b1,

float a2,

float b2,

char symbol,

float

*result)

//四捨五入函式

void

my_round

(float

*result)

}//加法

void

my_add

(float a1,

float b1,

float a2,

float b2,

float

*result)

//減法

void

my_sub

(float a1,

float b1,

float a2,

float b2,

float

*result)

//乘法

void

my_mul

(float a1,

float b1,

float a2,

float b2,

float

*result)

//除法

void

my_div

(float a1,

float b1,

float a2,

float b2,

float

*result)

7 36 複數四則運算 15分

本題要求編寫程式,計算2個複數的和 差 積 商。輸入在一行中按照a1 b1 a2 b2的格式給出2個複數c1 a1 b1i和c2 a2 b2i的實部和虛部。題目保證c2不為0。分別在4行中按照 a1 b1i 運算子 a2 b2i 結果的格式順序輸出2個複數的和 差 積 商,數字精確到小數點後1位。如...

7 36 複數四則運算 15 分

本題要求編寫程式,計算2個複數的和 差 積 商。輸入格式 輸入在一行中按照a1 b1 a2 b2的格式給出2個複數c1 a1 b1i和c2 a2 b2i的實部和虛部。題目保證c2不為0。輸出格式 分別在4行中按照 a1 b1i 運算子 a2 b2i 結果的格式順序輸出2個複數的和 差 積 商,數字精...

PTA練習 7 36 複數四則運算 15 分

本題要求編寫程式,計算2個複數的和 差 積 商。輸入格式 輸入在一行中按照a1 b1 a2 b2的格式給出2個複數c1 a1 b1i和c2 a2 b2i的實部和虛部。題目保證c2不為0。輸出格式 分別在4行中按照 a1 b1i 運算子 a2 b2i 結果的格式順序輸出2個複數的和 差 積 商,數字精...