在环形网格内创建一个3x3长方体

Creating a 3x3 box inside a looped grid

本文关键字:一个 3x3 长方体 网格 创建      更新时间:2023-10-16

我有一个学校项目。我创建了一个网格,看起来是这样的:

0000000000
0000000000
0000000000
0000000000
0000000000
0000000000
0000000000
0000000000
0000000000
0000000000

使用以下循环:

int img[10][10];
for(int i=0;i<10;i++) {
   for(int j=0;j<10;j++) {
        img[i][j] = 0; 
   }
}

我想实现这个:

0000000000
0011100000
0011100000
0011100000
0000000000
0000000000
0000000000
0000000000
0000000000
0000000000

我尝试的代码(非常错误,我已经知道)

int img[10][10];
int startRow, startCol, width, height, color;
startRow = 2;
startCol = 3;
width = 3;
height = 3;
color = 1
for(int i=0;i<10;i++) {
   for(int j=0;j<10;j++) {
       img[startRow][] = width + i; // so wrong
       img[startRow][startCol] = height + i; // what am i doing
       img[i + width][j + height] = color; // lets just crash the program 
   }
}

它不起作用。我不知道如何做到这一点。

这方面的任何帮助都将是伟大的。

您肯定使用以下代码创建了初始网格:

int img[10][10];
for(int i=0;i<10;i++) {
   for(int j=0;j<10;j++) {
        img[i][j] = 0; 
   }
}

而不是这个:

img[i][j] = j; 

我只想添加第二个循环(在第一个循环之后运行)来填充以下循环:

for(int i=1;i<=3;i++) {
   for(int j=2;j<=4;j++) {
        img[i][j] = 1; 
   }
}