《C语言及程序设计》实践参考——复数结构体

返回:贺老师课程教学链接

【项目1-复数结构体】

编写一个程序,首先定义一个复数数据类型,即结构类型。然后按照复数的运算规则进行计算,并按照复数表示的格式进行输出,请将程序补充完整。

#include <stdio.h>
struct complex
{
    int re;
    int im;
};
int main()
{
    struct complex x,y,s,p;
    scanf("%d%d",&x.re,&x.im);
    scanf("%d%d",&y.re,&y.im);
    //复数s是复数xy的和
    s.re=_______(1)_______;
    s.im=_______(2)_______;
    printf(" sum=%5d+%5di\n",s.re,s.im);
    //复数p是复数xy的积
    p.re=_______(3)_______;
    p.im=x.re*y.im+x.im*y.re;
    printf(" product=%5d+%5di\n",p.re,p.im);
    return 0;
}

[参考解答]

#include <stdio.h>
struct complex
{
    int re;
    int im;
};
int main()
{
    struct complex x,y,s,p;
    scanf("%d%d",&x.re,&x.im);
    scanf("%d%d",&y.re,&y.im);
    //复数s是复数xy的和,规则(a+bi)+(c+di)=(a+c)+(b+d)i.
    s.re=x.re+y.re;
    s.im=x.im+y.im;
    printf("sum=%d+%di\n",s.re,s.im);
    //复数p是复数xy的积,规则:(a+bi)(c+di)=(ac-bd)+(bc+ad)i
    p.re=x.re*y.re-x.im*y.im;
    p.im=x.re*y.im+x.im*y.re;
    printf("product=%d+%di\n",p.re,p.im);
    return 0;
}

你可能感兴趣的:(《C语言及程序设计》实践参考——复数结构体)