📄 image.c
字号:
#include <stdio.h>
#define WIDTH 80
#define HEIGHT 80
/* Global declarations */
unsigned in_buffer[WIDTH*HEIGHT]; /* processing data buffers */
unsigned out_buffer[WIDTH*HEIGHT];
/* Functions */
static void dataIO(void);
static int processing();
/*
* ======== main ========
*/
void main()
{
puts("processing\n");
dataIO();
processing();
dataIO();
}
/*
* ======== dataIO ========
*
* FUNCTION: read input signal and write processed output signal.
*
* PARAMETERS: none.
*
* RETURN VALUE: none.
*/
static void dataIO()
{
/* do data I/O */
return;
}
static int processing()
{
unsigned sum;
int i=0,j=0;
int denominator;
int p,q;
unsigned mean;
for(;i<HEIGHT-1;i++)
for(j=i*WIDTH;j<i*WIDTH+WIDTH;j++)
{
sum=0;
denominator=9;
for(p=-1;p<2;p++)
for(q=-1;q<2;q++)
{
if(i+p<0||(j-(i*WIDTH))+q<0||i+p>HEIGHT-1||(j-(i*WIDTH))>WIDTH-1)
{
denominator--;
}
else
{
sum+=in_buffer[p*WIDTH+(j+q)];
}
}
if(denominator>0)
{
mean=sum/denominator;
}
else
{
puts("error");
mean=in_buffer[j];
}
out_buffer[j]=mean;
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -