1、首先打开vc6.0, 新建一个项目。
2、添加stdio.h头文件。
3、添加math.h头文件。
4、添加main主函数。
5、定义结构体z。
6、定义double类型val变量。
7、初始化z。
8、使用cabs函数。
9、使用printf打印信息。
10、运行程序,看看结果。
在数学中一个复数可以定义为 (z=a + bi) 的形式。 C 语言在 ISO C99 时就引入了复数类型。它是通过 complex.h 中定义的。 我们可以使用 complex , __complex__ , 或 _ComplexI 类型符号来表示。
在C语言中有三种复数类型,分别为 float complex , double complex , long double complex 。他们之间 的区别就是表示复数中实部和虚步的数的数据类型不同。 complex 其实就是一个数组,数组中有两个元素,一个表示复数的实部,一个表示复数的虚部。
源代码如下:
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
double sum(double* x)
void main()
{
double *a,s=0.0
a=(double*)malloc(sizeof(double))
*a=5
s=sum(a)
printf("求和的结果是: %lf\n",s)
}double sum(double* x)
{
int j=0
double s=0.0
for(j=0j<=3j++)
{
s=s+pow(*x,j)
}
s=s*2
return s
}
扩展资料
输入任意两个复数差与商的源代码如下
typedef struct{
float r
float im
Complex
Complex res
Complex* add(Complex* a, Complex* b) {
res.r = a->r + b->r
res.im = a->im + b->im
return &res
}
Complex* div(Complex* a, Complex* b) {
float d = (b->r*b->r + b->im*b->im)
res.r = (a->r*b->r + a->im*b->im)/d
res.im = (a->im*b->r - a->r*b->im)/d
return &res
#include "math.h"struct complex{
int a
int b
}
complex mul(complex x,complex y){
complex c
c.a=x.a*y.a-x.b*y.b
c.b=x.a*y.b+x.b*y.a
return c
}
complex div(complex x,complex y){
complex c
c.a=(x.a*y.a+x.b*y.b)/(y.a*y.a+y.b*y.b)
c.b=(x.b*y.a-x.a*y.b)/(y.a*y.a+y.b*y.b)
return c
}
complex powr(complex x,int n){
complex c
c.a=1
c.b=0
for (int i=0i<ni++)
c=mul(c,x)
return c
}