-->
当前位置:首页 > 题库 > 正文内容

程序填空题:复数乘法*

Luz4年前 (2021-05-10)题库3728
复数乘法\*

下面的程序输入两个复数(实部、虚部),相乘后输出乘积。请在空白处填写适当内容完成该程序。

```c
#include

typedef struct
{
double rp, ip;
} COMPLEX;

void Input(COMPLEX *p);
void Output(const COMPLEX *p);
COMPLEX Multiply(COMPLEX *p, COMPLEX *q);

int main()
{
COMPLEX a, b, c;
Input(&a);
Input(&b);
c = @@[Multiply(&a, &b)](2);
Output(&c);
return 0;
}

void Input(COMPLEX *p)
{
scanf("%lg %lg", @@[&p->rp, &p->ip](2));
}

void Output(const COMPLEX *p)
{
printf("%g %g", @@[p->rp, p->ip](2));
}

COMPLEX Multiply(COMPLEX *p, COMPLEX *q)
{
COMPLEX r;
r.rp = @@[p->rp * q->rp - p->ip * q->ip](2);
r.ip = @@[p->rp * q->ip + p->ip * q->rp](2);
return r;
}
```






答案:
第1空:Multiply(&a, &b)

第2空:&p->rp, &p->ip

第3空:p->rp, p->ip

第4空:p->rp * q->rp - p->ip * q->ip

第5空:p->rp * q->ip + p->ip * q->rp

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。