简单的计算虚数

从今天开始坚持学数据结构和算法,并写总结

计算虚数在这里插入图片描述
计算这个很简单

思路:

1.先写结构体表示实数与虚数
2.用一个函数分别表达实属与虚数
3.写相加,相乘,相除的函数
tips:写函数时参数一定要用地址(指针),mmp的总是写着写着脑壳发昏参数带数(单向传递),球都出来不到。
4.带实参调用,输出

代码块:
1先写结构体表示实数与虚数

typedef struct complex
{
	float realpart = 0;
	float imagpart = 0;

}COMPLEX;

2用一个函数分别表达实属与虚数

void aggin(COMPLEX* a, float real, float imag)
{
	a->realpart = real;
	a->imagpart = imag;
}

3写相加,相乘,相除的函数

void add(COMPLEX* a, COMPLEX* b, COMPLEX* c)
{
	a->realpart = b->realpart + c->realpart;
	a->imagpart = b->imagpart + c->imagpart;
}

void multiply(COMPLEX* a, COMPLEX* b, COMPLEX* c)
{
	a->realpart = b->realpart * c->realpart;
	a->imagpart = b->imagpart * c->imagpart;
}

void divide(COMPLEX* a, COMPLEX* b, COMPLEX* c)
{
	a->realpart = b->realpart / c->realpart;
	a->imagpart = b->imagpart / c->imagpart;

}

主函数

int main()
{
	COMPLEX* a, * b, * c, * d, * e;
	a = (COMPLEX*)malloc(sizeof(COMPLEX));
	b = (COMPLEX*)malloc(sizeof(COMPLEX));
	c = (COMPLEX*)malloc(sizeof(COMPLEX));
	d = (COMPLEX*)malloc(sizeof(COMPLEX));
	e = (COMPLEX*)malloc(sizeof(COMPLEX));
	aggin(a, 8.0, 6.0);
	aggin(b, 4.0, 3.0);
	multiply(c, a, b);
	add(d, a, b);
	divide(e, c, d);
	printf("realpart = %f /nimagpart = %f", e->realpart, e->imagpart);
}

tips:最最最最重要的一定要给结构体变量分配内存空间

不然就
这样
在这里插入图片描述
在这里插入图片描述
在我的印象中老师说的给函数体赋初值是这样的

COMPLEX *a;
a->realpart = 0;
e->imagpart = 0;

然后我就天真的写了

	a->realpart = 0;
	a->imagpart = 0;
	b->realpart = 0;
	b->imagpart = 0;
	c->realpart = 0;
	c->imagpart = 0;
	d->realpart = 0;
	d->imagpart = 0;
	e->realpart = 0;
	e->imagpart = 0;

然后就

在这里插入图片描述

我:
在这里插入图片描述
然后,百度
在这里插入图片描述
果然,面对互联网编程yyds

大佬链接:https://blog.csdn.net/CSDN_Gao_16/article/details/110877060

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值