Java利用for循环打印各种图形:正三角形、倒三角形、正等腰三角形、倒等腰三角形和菱形

打印各种三角形


打印水仙花数
打印九九乘法表


读入一个整数(行数),用*打印正三角形、倒三角形、正等腰三角形、倒等腰三角形和菱形(for循环)


import java.util.Scanner;

public class TestGraphics {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入要打印图形的行数:");
		int rows = sc.nextInt();
		//正三角
		System.out.println("正三角:");
		for (int i = 1; i <= rows; i++) {//控制行数
			for (int j = 1; j <= i; j++) {
				System.out.print("*");
			}
			System.out.println();
		}
		System.out.println("--------------------------");
		//倒三角
		System.out.println("倒三角:");
		for (int i = rows; i >= 1; i--) {
			for (int j = 1; j <= i; j++) {
				System.out.print("*");
			}
			System.out.println();
		}
		//倒三角形第二种方法
		for (int i = 0; i <= rows; i++) {
        	for (int j = 1; j <= rows - i ; j++) {
        		System.out.print("*");
        	}
        	System.out.println();
        }
		System.out.println("--------------------------");
		//等腰三角形
		System.out.println("正等腰三角:");
		for (int i = 1; i <= rows; i++) {
        	//打印空格
        	for (int j = 1; j <= rows - i ; j++) {
        		System.out.print(" ");
        	}
        	//打印*
        	for (int j = 1; j <= 2 * i - 1; j++) {
        		System.out.print("*");
        	}
        	//换行
        	System.out.println();
        }
		System.out.println("--------------------------");
		//倒等腰三角形
		System.out.println("倒等腰三角:");
       for (int i = rows; i >= 0; i--)
		{
			for (int j = 0; j < rows - i; j++)
			{
				System.out.print(" ");
			}
			for (int j = 2 * i - 1; j > 0; j--)
			{
				System.out.print("*");
			}
			System.out.println();
		}
	}
}

执行结果:
Java利用for循环打印各种图形:正三角形、倒三角形、正等腰三角形、倒等腰三角形和菱形_第1张图片


打印菱形(菱形自身就是奇数行):

import java.util.Scanner;

//打印菱形
//因为菱形总行数自身本就是奇数行,所以在输入时进行奇数判断
//在这里我没有提取变量,上半部分行数:(rows / 2 + 1);下半部分行数:(rows / 2)
//提取变量更优化
public class TestRhombus {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int rows = 0;
		do {
			System.out.print("请输入要打印菱形的行数(奇数):");
			rows = sc.nextInt();
		} while(rows % 2 == 0);
		for (int i = 1; i <= rows / 2 + 1; i++) {
			//打印正等腰三角形
        	//打印空格
        	for (int j = 1; j <= rows / 2 + 1 - i ; j++) {
        		System.out.print(" ");
        	}
        	//打印*
        	for (int j = 1; j <= 2 * i - 1; j++) {
        		System.out.print("*");
        	}
        	//换行
        	System.out.println();
        }
        for (int i = rows / 2; i >= 1; i--) {
        	//打印倒等腰三角形组成菱形
        	//打印空格
        	for (int j = 1; j <= rows / 2 + 1 - i; j++) {
        		System.out.print(" ");
        	}
        	//打印*
        	for (int j = 2 * i - 1; j >= 1; j--) {
        		System.out.print("*");
        	}
        	//换行
        	System.out.println();
        }
	}
}

执行结果:
Java利用for循环打印各种图形:正三角形、倒三角形、正等腰三角形、倒等腰三角形和菱形_第2张图片

你可能感兴趣的:(Java基础库)