오늘 c언어 파일 입출력을 배우다 BMP파일 관련한 과제가 나왔는데.. 가르쳐 주지도 않고 과제를 막 던져대니 힘들어 죽겠네요..

여기저기 찾아봐도 이해도 잘 안되고, 원하는 부분은 못 찾겠고 해서 프갤애 물어보려 합니다 ㅠ.ㅠ


위쪽 부분은 BMP파일 형식에 맞게 구조체 선언하고, fopen과 fread로 정보 읽어들이는 부분이라 잠시 잘라내고, 물어보고 싶은 부분만 잘라서 올려보아요.


여기서 for문 안에, bgr순서 중 첫번째 칸에 해당하는 색이 저장되어 있는 공간을 0으로, gray로 채우라는데, 이게 대체 무슨 의미인지 모르겠어요.



struct BITMAPFILEHEADER
{
 unsigned short identity; // 2 byte : “BM” is BMP
 unsigned int file_size; // 4 byte : File size in bytes
 unsigned short reserved1; // 2 byte : unused(=0)
 unsigned short reserved2; // 2 byte : unused(=0)
 unsigned int data_offset; // 4 byte : File offset to Raster Data
};


struct BITMAPINFOHEADER
{
 unsigned int header_size; // 4 byte : size of struct BITMAPINFOHEADER
 int width; // 4 byte : Bitmap Width (pixel)
 int height; // 4 byte : Bitmap Height (pixel)
 unsigned short planes; // 2 byte : Number of Planes (=1)
 unsigned short bit_per_pixel; // 2 byte : Bit per pixel (1/4/8/16/24/32)
 unsigned int compression; // 4 byte : compression type, 0 :no compression
 unsigned int data_size; // 4 byte : (compressed) Size of Image
 int hresolution; // 4 byte : pixel/m
 int vresolution; // 4 byte : pixel/m
 unsigned int used_colors; // 4 byte : Number of actually used colors
 unsigned int important_colors; // 4 byte : Number of important colors 0 = all
};


struct PALLETTE
{
 char blue;
 char green;
 char red;
 char reserved;
};



이 구조체 안에서 어떤 값을 0으로 만들어야 하는 건가요?ㅠㅠ



---------

 printf("변경하고자하는 색상을 입력해 주세요: red:3, green:2, blue:1 gray:over 3 ");//변경할 색을 결정하게 한다.
 scanf("%d", &k);

 if (k<4)
 {
 for (i = 0; i < info.height, i++;)//그림의 높이만큼 반복한다.
 for (j = 0; j < info.width, j++;)//그림의 너비만큼 반복한다.(한줄씩 진행)
 {

'''''''이부분 질문하고 싶은 부분'''''''''


  //bgr순서중 첫번째 칸에 해당하는 색이 저장되어 있는 공간을 0으로 채운다.
  //저장되어 있는 공간을 0으로 채운다.
 }


 else//k에 4이상의 값을 입력 받으면
 {


'''''''이부분도 질문 ㅠㅠ'
  for (i = 0; i < info.height, i++;)//그림의 높이만큼 반복
  for (j = 0; j < info.width, j++;)//그림의 너비만큼 반복(1줄씩 실행)
  {

  }//gray로 색 변경