如果只用循环能实现吗?
public class LouKong
{
public static void main (String []args)
{
int lay=2;
for (int i=1;i<=lay;i++)
{
for (int k=1;k<=lay-i;k++)
{
System.out.printf(" ");
}
System.out.printf("*");
System.out.println();
}
System.out.printf("*");
//这里咋样才不会换行,有那个控制字符能做到
?如果方法、思路不对,请各位指教!
for (int p=1;p<lay-p;p++)
{
System.out.printf(" ");
System.out.printf("*");
}
}
public class LouKong
{
public static void main (String []args)
{
int lay=2;
for (int i=1;i<=lay;i++)
{
for (int k=1;k<=lay-i;k++)
{
System.out.printf(" ");
}
System.out.printf("*");
System.out.println();
}
System.out.printf("*");
//这里咋样才不会换行,有那个控制字符能做到
?如果方法、思路不对,请各位指教!
for (int p=1;p<lay-p;p++)
{
System.out.printf(" ");
System.out.printf("*");
}
}
public static void main(String[] args) {
int i, j, k;
// i 的值,-3,-2,-1,0,1,2,3
for (i = -3, j = 1; i <= 3; j++) {
// 对i取绝对值,并传至给k
if (i < 0)
k = i * (-1);
else
k = i;
// 如果满足条件,输出*,且跳出本次循环。
if (j <= k || (j > 7 - k && j != 8)) {
System.out.print(" ");
continue;
}
// 如果满足条件输出a
if (j > k && j <= 7 - k) {
if ((j == k+1) || (j == 7-k)) {
System.out.print("*");
} else {
System.out.print(" ");
}
}
// 如果j=8则i自加1,并将0重新赋值为0!
// (只有j在[1,7]范围内才输出)
if (j == 8) {
i++;
j = 0;
System.out.println();
}
}
}
}
System.out.println("*"); 这样才换行
System.out.println("* *");
System.out.println(" *");