📄 caiyang.c
字号:
#include<stdio.h>
fftcy(struct compx s[4097])
{
int i,j,m=0,n=0,max1=0,max2=0,weishu=10,fs=8810,nFFT=4096;
xdata int xiabiao1[2049],xiabiao2[2049],fxin[10];
xdata float T=1/fs,Tp=0.75,f[2049],fz[2049],temp1[2049],temp2[2049];
for(i=0;i<=nFFT/2;i++)
f[i]=fs*i/nFFT;
for(i=0;i<=nFFT/2;i++)
fz[i]=sqrt(s[i].real*s[i].real+s[i].imag*s[i].imag);
for(i=1;i<nFFT/2;i++)
{if(fz[i-1]<fz[i]&&fz[i]>fz[i+1]) //比前后幅值都大的点就是峰值点
{temp2[m]=fz[i]; //峰值点存储到向量temp2
temp1[m]=temp2[m];
xiabiao1[m]=i; //峰值点所对应的频率向量下标存储到向量xiabiao
m=m+1;
}
} //这一小段程序完成的是找出所有峰值点
for(i=0;i<=m-1;i++)
for(j=i+1;j<=m;j++)
{if(temp1[i]<temp1[j]} //冒泡法按大小排列
{ max1=temp1[j];
temp1[j]=temp1[i];
temp1[i]=max1; //交换幅值
}
} //这一小段程序完成的是按大小排列所
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -