代码1 :
package cn.bdqn.demo02;
public class Zuoye24 {
public static void main(String[] args) {
for(int i=1;i<=3;i++){
for(int x=2-i;x>=0;x--){
System.out.print(" ");
}
for(int a=1;a<=i*2-1;a++){
System.out.print("*");
}
System.out.println();
}
}
}
代码2:
package cn.bdqn.demo02;
public class Zuoye25 {
public static void main(String[] args) {
for(int i=1;i<=6;i++){
for(int x=5-i;x>=0;x--){
System.out.print(" ");
}
for(int a=1;a<=2*i+4;a++){
System.out.print("*");
}
System.out.println();
}
for(int i=1;i<=5;i++){
for(int x=i-1;x>=0;x--){
System.out.print(" ");
}
for(int a=1;a<=16-2*i;a++ ){
System.out.print("*");
}
System.out.println();
}
}
}
代码3:
package cn.bdqn.demo02;
public class Zuoye26 {
public static void main(String[] args) {
// 打印空心菱形
// 总行数为17,第九行就是中间部分,上下对称
for(int i=1;i<18;i++){
// 前面九行
if(i<=9){
// 输出前面的空格
for(int x=i;x<=9;x++){
System.out.print(" ");
}
// 第一个和最后一个需要打印星号,其余不需要
for(int a=1;a<=i*2-1;a++){
if(a==1 || a==i*2-1){
System.out.print("*");
}else{
System.out.print(" ");
}
}
}else{
// 同上,先打印空格,好好想一下,知道怎么减少空格,和怎加空格
for(int z=9;z<=i;z++){
System.out.print(" ");
}
// 与上面相对应,上面是从小到达,*2-1,,那么这就
// 从小到大,现有最大值,到最小值的变化,(18-i)随
// 着i的增大,(18-i)会越来越小
for(int a=(18-i)*2-1;a>=1;a--){
// 判断打印空格还是星号
if(a==1 || a==(18-i)*2-1){
System.out.print("*");
}else{
System.out.print(" ");
}
}
}
System.out.println();
}
}
}
代码4:
package cn.bdqn.demo02;
public class Zuoye27 {
public static void main(String[] args) {
// 最外层循环,用来控制行数
for(int i=0;i<=9;i++){
// 用来控制每一行打印的星号
for(int a=1;a<=19;a++){
// 为真则不打印,否则打印
if(a-i<=10 && a+i>=10){
System.out.print(" ");
}else{
System.out.print("*");
}
}
System.out.println();
}
}
}



