分析:
想要得到上述图片样式,一个是要实现打印*数量的递增 另一个是要考虑每行的填充,用什么填充 当然是空格了!
代码如下:
import java.util.Scanner;
public class First
{
public static void main(String[] args)
{
int i,j,k,n;
Scanner input=new Scanner(System.in);
System.out.print("请输入金字塔层数:");
n=input.nextInt();//外层循环控制层数
for(i=1;i<=n;i++)
{
//根据外层行号,输出星号左边空格
for(j=1;j<=n-i;j++)
System.out.print(" ");//根据外层行号,输出星号个数
for(k=1;k<=2*i-1;k++)
System.out.printf("*");//一行结束,换行
System.out.printf("\n");
}
}
}
实现2
import java.util.Scanner;
public class First
{
public static void main(String[] args)
{
int i,j,k,n;
Scanner input=new Scanner(System.in);
System.out.print("请输入金字塔层数:");
n=input.nextInt();//外层循环控制层数
for(i=1;i<=n;i++)
{
for(j=i;j<=n;j++)
System.out.print(" ");//根据外层行号,输出星号个数
for(k=1;k<=i;k++)
System.out.printf("* ");//一行结束,换行
System.out.printf("\n");
}
}
}
得到了三角形后我们还想得到一个菱形怎么办?
分析:只需要上边一个正三角形下边一个倒三角型即可
实现代码:
import java.util.Scanner;
public class First
{
public static void main(String[] args)
{
int i,j,k,n;
Scanner input=new Scanner(System.in);
System.out.print("请输入菱形上三角层数:");
n=input.nextInt();//外层循环控制层数
for(i=1;i<=n;i++)
{
for(j=i;j<=n;j++)
System.out.print(" ");
for(k=1;k<=i;k++)
System.out.printf("* ");
System.out.printf("\n");
}
for(i=2;i<=n;i++)
{
for(k=1;k<=i;k++)
System.out.print(" ");
for(j=i;j<=n;j++)
System.out.printf("* ");
System.out.printf("\n");
}
}
平行四边形实现
import java.util.Scanner;
public class First
{
public static void main(String[] args)
{
int i,j,k,n;
Scanner input=new Scanner(System.in);
System.out.print("请输入平行四边形层数:");
n=input.nextInt();//外层循环控制层数
for(i=1;i<=n;i++)
{
for(k=1;k<=i-1;k++)
System.out.print(" ");
for(j=1;j<=2*n;j++)
System.out.printf("*");
System.out.printf("\n");
}
}
}
java九九乘法表的实现
分析:三角形的变种,利用嵌套for循环实现
import java.util.Scanner;
public class First
{
public static void main(String[] args)
{
//外循环控制行数
for(int i=1;i<10;i++)
{
//内循环控制每行表达式个数
for(int j=1; j<=i; j++)
{
System.out.print(" "+i+"*"+j+"="+(i*j));
}
//一行结束换行
System.out.println();
}
}
}