⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 zz.cpp

📁 一个关于中值滤波的程序
💻 CPP
字号:
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>

int middle(int array[],int n)
{
   int i,j;
   int large=0,little=0;
   for(i=0;i<n;i++)
   {
      if(i>0&&((array[i]>array[i-1]&&large<little)||(array[i]<array[i-1]&&little<large)||array[i]==array[i-1]))
             continue;
      large=little=0;
      for(j=0;j<n;j++)
         if(j!=i)
        {
           if(array[j]>=array[i])
              large++;
           if(array[j]<=array[i])
              little++;
         }
   if(abs(large-little)<=3)
         break;
   }
   return i;
}

void sort(int array[],int n)
{
   int i,j;
   for(i=0;i<n-1;i++)
     for(j=0;j<n-2;j++)
          if(array[j]>array[j+1])
          {
             int t=array[j];
            array[j]=array[j+1];
            array[j+1]=t;
          }
}

void output(int array[],int n)
{
   int i;
   for(i=0;i<n;i++)
   {
      if(i%20==0)
           printf("\n");
      printf("%4d",array[i]);
   }
}

void main()
{
   int i,pos;
   int data[1001];
   clrscr();
   for(i=0;i<1001;i++)
      data[i]=random(150);
   pos=middle(data,1001);
   printf("\nThe original data is:\n");
   output(data,1001);
   printf("\nThe middle value is:%4d.The position is:%4d",data[pos],pos);
   sort(data,1001);
   printf("\nThe sorted data is:\n");
   output(data,1001);
   printf("\nThe middle value from second method is:%4d",data[500]);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -