一道小题目-用*#@打印矩形

目录 曲不离口

前阵在 javaeye 上看到的一个题目,在这里记录下。


[题目] 补全printRect方法。

要求根据传入的宽和高打印出相应大小的矩形,矩形最外圈为*,内部用#和@交替填充

public void printRect(int w,int h)
{
}


预期效果:

printRect(21,9);
*********************
*###################*
*#@@@@@@@@@@@@@@@@@#*
*#@###############@#*
*#@#@@@@@@@@@@@@@#@#*
*#@###############@#*
*#@@@@@@@@@@@@@@@@@#*
*###################*
*********************



写了个python的版本:

def printRect(w, h):
        for i in range(1, h+1):
                for j in range(1, w+1):
                        p = min( min(j, w+1-j), min(i, h+1-i) )
                        if p == 1:
                                print '*',
                        elif p % 2 == 0:
                                print '#',
                        else:
                                print '@',
                print


暂无评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注