一、如下图形的打印
改图形共有五行,且每一行从上到下从一增加到五,所以每行打印“*”的个数与行数相同,我们用变量i控制行数,作为外层循环,用j控制个数,作为内层循环。代码如下:
public class test {
public static void main(String[] args) {
//外层循环控制行数
for(int i = 1;i<=5;i++) {
//内层循环控制个数
for(int j = 1;j<=i;j++) {
System.out.print("*");
}
//每打印一行就换行
System.out.println();
}
}
}
二、如下图形的打印
二与一不同之在于二是从上到下依次减少的,
我们采用与一相同的办法,观察行数与每行个数的关系,不难发现,每行的行数与个数相加等于6,所以j<=6-i;代码如下:
public class test1 {
public static void main(String[] args) {
//外层循环控制行数
for(int i = 1;i <=5;i++) {
//内层循环控制个数
for(int j = 1;j <= 6-i;j++) {
System.out.print("*");
}
//每打印一行换行
System.out.println();
}
}
}
三、如下图形的打印
第一行空格4星号1,第二行空格3星号3,第三行空格2星号5
不难看出空格加行数等于5,星号=1+2*(i-1)程序如下
public class test2 {
public static void main(String[] args) {
for(int i=1;i<=5;i++) {
for(int j = 1;j <= 5-i;j++) {
System.out.print(" ");
}
for(int j = 1;j<=1+2*(i-1);j++) {
System.out.print("*");
}
System.out.println();
}
}
}
四、如下图形的打印
此图形由于上下变化规律不一样故可以将其分成两部分分开打印代码如下
public class test2 {
public static void main(String[] args) {
//上半部分
for(int i=1;i<=5;i++) {
for(int j = 1;j <= 5-i;j++) {
System.out.print(" ");
}
for(int j = 1;j<=1+2*(i-1);j++) {
System.out.print("*");
}
System.out.println();
}
//下半部分
for(int i = 1;i<=4;i++) {
for(int j = 1;j<=i;j++) {
System.out.print(" ");
}
for(int j = 1;j<=9-2*i;j++) {
System.out.print("*");
}
System.out.println();
}
}
}
五、其它图形的打印以及代码
class test10{
public static void main(String[] args){
for(int i=0;i<5;i++){
for(int j=0;j<4-i;j++){
System.out.print(" ");
}
for(int k=0;k<i+1;k++){
System.out.print("* ");
}
System.out.println();
}
for(int i=1;i<=4;i++){
for(int j=1;j<=i;j++){
System.out.print(" ");
}
for(int k=1;k<=5-i;k++){
System.out.print("* ");
}
System.out.println();
}
}
}
class test1{
public static void main(String[] args){
//上半部分
for(int i=0;i<5;i++){
for(int k=1;k<6-i;k++){
System.out.print("*");
}
for(int j=1;j<=2*i;j++){
System.out.print(" ");
}
for(int k=1;k<6-i;k++){
System.out.print("*");
}
System.out.println();
}
//下半部分
for(int i=1;i<=4;i++){
for(int j=1;j<=i+1;j++){
System.out.print("*");
}
for(int k=1;k<=8-(2*i);k++){
System.out.print(" ");
}
for(int j=1;j<=i+1;j++){
System.out.print("*");
}
System.out.println();
}
}
}