打印正金字塔(逻辑型)
import java.util.Scanner;
//利用双for 循环+if语句实现,逻辑性较强public class Test02 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入金字塔的层数:");
int sum =sc.nextInt();
String s = null;
for (int i = 1; i <= sum; i++) {
for (int j = 1, k = 0; j <= 2 * sum - 1; j++) {
s = " ";
//第i行从第(sum-i)个开始打印,打印2i-1个
if (j == sum - i + 1 + k && k < 2 * i - 1) {
s = "*";
k++;
}
System.out.print(s);
}
System.out.println();
}
}
}
打印正金字塔(理解性)
import java.util.Scanner;//打印金字塔,利用for循环
public class Test03 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
System.out.println("请输入金字塔的层数:");
int num =sc.nextInt();
//前两个for循环用来打印空格
for (int i = 0; i < num; i++) {
for (int j = 1; j < num - i; j++) {
System.out.print(" ");
}
//用来打印*字键
for (int k = num ; k < num +(2*i)+1; k++) {
System.out.print("*");
}
System.out.println("\t");
}
}
}
打印倒金字塔
//打印倒三角public class Test01 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int len = 10;
String str = "";
for (int i = len; i >= 0; i -= 2) {
str = str + " ";
for (int j = 0; j <= i; j++) {
System.out.print('*');
}
System.out.println();
System.out.print(str);
}
}
}