空心菱形
小明剛剛開發了一個小程序,可以打印出任意規模的空心菱形,規模爲6時,如下圖:
****** ******
***** *****
**** ****
*** ***
** **
* *
** **
*** ***
**** ****
***** *****
****** ******
(如果有對齊問題,參看【圖1.png】)
他一高興,踢掉了電源,最後一次修改沒有保存.....
毛病出在劃線的部分。
請你幫助小明分析程序,填寫劃線部分缺失的代碼。
static String pr(int m, int n)
{
String s = "";
for(int i=0; i<n; i++) s += " ";
for(int i=0; i<m; i++) s = "*" + s + "*";
return s;
}
static void f(int n)
{
String s = pr(1,n*2-1) + "\n";
String s2 = s;
for(int i=1; i<n; i++){
s =——————; //填空位置
s2 = s + s2 + s;
}
System.out.print(s2);
}
注意:只填寫缺少的內容,不要填寫題面已有代碼或說明性文字。
思路:
這題提題意很簡單,我們可以先簡單的讀下代碼,我就不再過多解釋了;
package Lqb;
public class Text46 {
public static void main(String[] args) {
f(6);
}
static String pr(int m, int n)
{
String s = "";
for(int i=0; i<n; i++) s += " ";
for(int i=0; i<m; i++) s = "*" + s + "*";
return s;
}
static void f(int n)
{
String s = pr(1,n*2-1) + "\n";
String s2 = s;
for(int i=1; i<n; i++){
s =pr(i+1,2*(n-i)-1)+"\n"; //填空位置
s2 = s + s2 + s;
}
System.out.print(s2);
}
}