1368 编写函数:复数的运算 (Append Code)

本文详细介绍了复数的基本运算原理,包括加法和减法,并提供了使用C语言实现这些运算的具体方法。通过定义复数结构体和编写相应的函数,如获取、输出复数,以及进行复数加减运算,读者可以深入了解复数运算的实现过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Description

设有两个复数a+bi、c+di,它们的加减法运算定义为:

(a+bi)+(c+di)=(a+c)+(b+d)i

(a+bi)-(c+di)=(a-c)+(b-d)i


编写以下四个函数完成程序:

原型:void get_cplx(struct CPLX *cx);

功能:按格式输入一个复数,存入cx所指的内存中。

原型:void put_cplx(struct CPLX cx);

功能:按格式输出一个复数。

原型:struct CPLX add_cplx(struct CPLX cx1, struct CPLX cx2);

功能:返回复数,其值为cx1+cx2。

原型:struct CPLX sub_cplx(struct CPLX cx1, struct CPLX cx2);

功能:返回复数,其值为cx1-cx2。

函数的调用格式见“Append Code”。

Input

输入第一个整数n,表示后面有n组测试数据。每组测试数据包括两行,每行为一个复数的实部和虚部。

Output

输出为多组,与输入顺序对应。每组为两行,第一行是两复数相加的结果,第二行是两复数相减的结果。每行输出一个复数的实部和虚部,用一个空格分隔。

Sample Input

1
2 1
1 2

Sample Output

3 3
1 -1

HINT

“Append Code”中用到的头文件、自定义类型的定义应自行补充。

Append Code

append.c,

int main()
{
    struct CPLX ab, cd;
    int cases;
    scanf("%d", &cases);
    while(cases--)
    {
        get_cplx(&ab);
        get_cplx(&cd);
        put_cplx( add_cplx(ab, cd) );
        put_cplx( sub_cplx(ab, cd) );
    }
    return 0;
}
#include <stdio.h>
struct CPLX
{
    int a,b;
};
void get_cplx(struct CPLX *cx)
{
    scanf("%d %d",&cx->a,&cx->b);
}
void put_cplx(struct CPLX cx)
{
    printf("%d %d\n",cx.a,cx.b);
}
struct CPLX add_cplx(struct CPLX cx1, struct CPLX cx2)
{
    struct CPLX sum;
    sum.a=cx1.a+cx2.a;
    sum.b=cx1.b+cx2.b;
    return sum;
};
struct CPLX sub_cplx(struct CPLX cx1, struct CPLX cx2)
{
    struct CPLX sum;
    sum.a=cx1.a-cx2.a;
    sum.b=cx1.b-cx2.b;
    return sum;
};
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值