你们能帮我一下吗? 我必须打印那种种类的图案Example for pattern
在该示例中,大小的输入为 21。
for (int row = 0; row < size; row++)
for (int col = 0; col < size; col++) {
if (row == 0 && col == 0 || row == 0 && col == size - 1 || row == size - 1 && col == 0 || row == size - 1 && col == size - 1)
printf("+");
if ((row == 0 || row == size - 1) && (col > 0 && col < size - 1))
printf("-");
if ((row > 0 && row < size - 1) && (col == 0 || col == size - 1))
printf("|");
if ((row > 0 && row < size - 1) && (col > 0 && col < size - 1)) {
if (row == col)
printf("\\");
else
if (col == size - 2)
printf("/");
else
if (row == x && col == x)
printf("X");
else
printf(" ");
}
}
这是我写的代码,但效果不好。 我该如何解决它? 谢谢!
最佳答案
这是另一个解决方案,
int main()
{
int size =5;
int counter = 0;
printf("+");
for(int k=1;k<=size+1;k++){
printf("-");
}
printf("+");
printf("\n");
}
for(int i=1;i<=size;i++){
printf("|");
for(int j=1;j<=size;j++){
if(j==0 || j==i )
printf("\\");
else
printf(" ");
if(counter==0){
if(j==size){
printf("/");
counter++;
}
}
else if(j==size-i+1)
printf("/");
if(j==size)
printf("|");
}
printf("\n");
}
printf("+");
for(int k=1;k<=size+1;k++){
printf("-");
}
printf("+");
printf("\n");
return 0;
}
关于c - 在 C 中使用 for 循环绘制图案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58890508/