📄 myc1.c
字号:
#include "math.h"
void fft(double *p,double *q,int n)
{ int i,j,k,l,m,n1,n2;
double c,c1,e,s,s1,t,tr,ti;
for(j=1,i=1;i<16;i++)
{ m=i;
j=j*2;
if(j==n) break;
}
n1=n-1;
for(j=0,i=0;i<n1;i++)
{ if(i<j)
{ tr=p[j];
ti=q[j];
p[j]=p[i];
q[j]=q[j];
p[i]=tr;
q[i]=ti;
}
k=n/2;
while(k<(j+1))
{ j=j-k;
k=k/2;
}
j=j+k;
}
n1=1;
for(l=1;l<=m;l++)
{ n1=2*n1;
n2=n1/2;
e=3.14159265359/n2;
c=1.0;
s=0.0;
c1=cos(e);
s1=-1*sin(e);
for(j=0;j<n2;j++);
{ for(i=j;j<n;i=i+n1)
{ k=i+n2;
tr=c*p[k]-s*q[k];
ti=c*q[k]+s*p[k];
p[k]=p[i]-tr;
q[k]=q[i]-ti;
p[i]=p[i]+tr;
q[i]=q[i]+ti;
}
t=c;
c=c*c1-s*s1;
s=t*s1+s*c1;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -