【问题标题】:Draw a rectangle made with printf function, consisted of inner frames [closed]绘制一个用 printf 函数制作的矩形,由内框组成
【发布时间】:2014-11-22 11:08:07
【问题描述】:

我已经尝试了几个小时,但无法找到一种方法来做到这一点。 我们在学校被分配了一项任务,以获得高度和宽度的 2 个输入(假设它们在 2-50 之间), 并以这种方式创建一个矩形: 矩形框将由字母 a 组成, 内部矩形框将由字母 b 制成, 内部矩形框架的内部矩形框架将由字母 c 制成, 等等... 例如:

10X7:
aaaaaaaaaa
abbbbbbbba
abccccccba
abcddddcba
abccccccba
abbbbbbbba
aaaaaaaaaa

我正在尝试使用“for”循环来计算高度和宽度 我正在绘制矩阵作为草稿,以查看如何使用 ASCII 值更改字母跳跃, 但我想不出一个算法。 非常感谢您的帮助。

【问题讨论】:

  • 向我们展示您的代码以及迄今为止您尝试过的内容!

标签: c printf


【解决方案1】:

由于你没有发布代码,我也只是口头描述一个可能的算法。

您需要两个嵌入的 for 循环。行 (y) 的外部循环,行 (x) 内的字符的内部循环。两者都应从零运行到 xmax 和 ymax,即命令行中指定的数字减一。

在内循环的主体内,您必须找到框架。这取决于到边缘的距离。但是哪个边缘?最接近的一个。所以这个距离是(x, y, xmax-x, ymax-y)的最小值。

然后你打印 'a' + 距离。此外,在每一行之后,您打印一个换行符。

【讨论】:

  • 非常感谢!这就是我需要的。
  • 当您将鼠标移到add a comment 链接上时,您会看到一条消息,您应该避免说谢谢。为什么?因为 StackOverflow 表示感谢的方式是 Upvote 和 Accept。我这样做只是为了积分。
  • 一旦我获得足够的声誉就会这样做。
猜你喜欢
  • 1970-01-01
  • 2014-01-13
  • 2018-12-21
  • 1970-01-01
  • 2012-09-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多