C语言中复数运算及调用blas,lapack中复数函数进行科学计算

本文介绍了C语言中如何进行复数运算,并详细讲解了如何利用BLAS和LAPACK库中的复数函数进行科学计算。包括使用`complex.h`头文件进行基本复数操作,以及调用BLAS库中三种不同形式的复数表示:C语言内置的`complex`类型、结构体和实部与虚部交替存储的方法。每个方法都通过实例展示了如何编译和执行代码,强调了在调用这些库时正确声明函数的重要性。
摘要由CSDN通过智能技术生成

C语言中常用的数据类型主要int, float ,double ,char 等,但在科学运算中复数扮演着重要角色。这里讲下C语言中的复数运算以及如何调用blas,lapack库中的复数函数来进行科学计算.

1.C语言中的复数运算。

C语言中若要用的复数,需要包含头文件complex.h,下面看看一些基本的例子

#include <stdio.h>
#include"complex.h"

int main()
{
    complex a, b, c, d, f;
    a = 1 + 2*I;
    b = 3 + 4*I;
    c = a+b;
    d = a*b;
    f = a/b;
    printf("complex a plus b is :%f, %f\n", creal(c), cimag(c));
    printf("complex a multiply b is :%f, %f\n", creal(d), cimag(d));
    printf("complex a divided b is :%f, %f\n", creal(f), cimag(f));

}

说明:

     (1).creal(c), cimag(c)表示分别取复数c的实部和虚部;

     (2).complex 默认是complex double 型数据结构,即实部和虚部都是double 型,当然也可以定义complex int型;

  (3).虚数单位是用I来表示

生成可执行文件:

gcc -o test_complex test_complex1

得到的结果如下:

complex a plus b is :4.000000, 6.000000
complex a multiply b is :-5.000000, 10.000000
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值