軟體演算法濾波##—多級
include <stdio.h>
include <stdlib.h>
include <time.h>
int main(void)
{
int a[10];
int i,m,rt=0,tp,k;
for( i=0;i<10;i++ )
{
int j;
int n=rand()%10+0xea;
for( j=0;j<i;j++ )
{
if ( a[j]==n ) {
i--;
break;
}
}
if ( j>=i )
a[i]=n;
}
for(m=0;m<10;m++)
{
for(i=0;i<10-m;i++)
{
if(a[i]>a[i+1])
{
k=a[i];
a[i]=a[i+1];
a[i+1]=k;
}
}
}//遞推排序
printf("10個取樣值是:
");
for( i=0;i<10;i++)
printf("%x
", a[i]);
for(i=1;i<9;i++){
rt+=a[i];
}
rt=rt/8;//--------"中值濾波"
printf("最終濾波值是:%d",rt);
}