import java.util.Scanner;
public class Demo20 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// System.out.println("输入宽度*的个数");
// int wide = scanner.nextInt();
// System.out.println("输入高度*的个数");
// int height = scanner.nextInt();
int height = 5;
int wide = 5;
System.out.println("打印实心正方形");
//打印正方形
for (int i = 0; i < height; i++) {
for (int j = 0; j < wide; j++) {
System.out.print("*\t");
}
System.out.print("\n");
}
System.out.println();
System.out.println("打印空心正方形");
//打印空心正方形
for (int i = 0; i < height; i++) {
for (int j = 0; j < wide; j++) {
if (i==0){
System.out.print("*\t");//首行全打印
}
else if (i==height-1){
System.out.print("*\t");//末行全打印
}
else {
if (j==0){
System.out.print("*\t");//首列打印
}
else if(j==wide-1){
System.out.print("*\t");//末列打印
}
else System.out.print(" \t");//中间打印空格
}
}
System.out.print("\n");
}
System.out.println();
//打印直角三角形
System.out.println("打印直角三角形_变量状态实现");
for (int i = 0; i < height; i++) {
int n=0;
for (int j = 0; j < wide; j++) {
System.out.print("*\t");
n++;
if (n>i) break;
}
System.out.print("\n");
}
System.out.println();
System.out.println("打印直角三角形_非判断循环实现");
for (int i = 0; i < height; i++) {
for (int j = 0; j <= i; j++) {
System.out.print("*\t");
}
System.out.print("\n");
}
System.out.println();
System.out.println("打印倒直角三角形_变量状态实现");
//打印倒直角三角形
for (int i = 0; i < height; i++) {
int n=height-1;
for (int j = 0; j < wide; j++) {
System.out.print("*\t");
n--;
if (n<i) break;
}
System.out.print("\n");
}
System.out.println("打印倒直角三角形_反向循环实现");
//打印倒直角三角形
//非状态控制,用反向循环实现
for (int i = 0; i < height; i++) {
for (int j = wide-i-1; j >= 0; j--) {
System.out.print("*\t");
}
System.out.print("\n");
}
System.out.println("打印等腰三角型");
//打印等腰三角形
//height等于wide才能打印出等腰三角形
int n=0;//作为中间值扩散打印范围的变量
if (wide % 2 !=0){//输入的wide必须为奇数
for (int i = 0; i < wide; i++) {
int middle = (wide-1)/2;
for (int j = 0; j < wide; j++) {
//当高度是偶数打印 否则奇数不打印
if(i % 2 == 0){
if((middle-n)<= j&&j <=(middle+n)){//j落在中间值与n的范围才打印*
System.out.print("*\t");
}
else {
System.out.print(" \t");//否则打印空格
}
}
else {
n++;//奇数不打印的时候,扩散范围自增
break;
}
}
System.out.print("\n");
}
}
else System.out.println("您输入的宽度无法打印出等腰三角形");
System.out.println("九九乘法表_状态变量实现:");
for (int i = 1; i < 10; i++) {
for (int j = 1; j < 10; j++) {
if(j>=i){//不重复的打印
System.out.print(i+"x"+j+"="+i*j+"\t");
}
}
System.out.println();
}
System.out.println("九九乘法表_非判断循环实现:");
//非判断循环
for (int i = 1; i < 10; i++) {
for (int j = i; j < 10; j++) {
System.out.print(i+"x"+j+"="+i*j+"\t");
}
System.out.println();
}
}
}
效果
打印实心正方形
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
打印空心正方形
* * * * *
* *
* *
* *
* * * * *
打印直角三角形_变量状态实现
*
* *
* * *
* * * *
* * * * *
打印直角三角形_非判断循环实现
*
* *
* * *
* * * *
* * * * *
打印倒直角三角形_变量状态实现
* * * * *
* * * *
* * *
* *
*
打印倒直角三角形_反向循环实现
* * * * *
* * * *
* * *
* *
*
打印等腰三角型
*
* * *
* * * * *
九九乘法表_状态变量实现:
1x1=1 1x2=2 1x3=3 1x4=4 1x5=5 1x6=6 1x7=7 1x8=8 1x9=9
2x2=4 2x3=6 2x4=8 2x5=10 2x6=12 2x7=14 2x8=16 2x9=18
3x3=9 3x4=12 3x5=15 3x6=18 3x7=21 3x8=24 3x9=27
4x4=16 4x5=20 4x6=24 4x7=28 4x8=32 4x9=36
5x5=25 5x6=30 5x7=35 5x8=40 5x9=45
6x6=36 6x7=42 6x8=48 6x9=54
7x7=49 7x8=56 7x9=63
8x8=64 8x9=72
9x9=81
九九乘法表_非判断循环实现:
1x1=1 1x2=2 1x3=3 1x4=4 1x5=5 1x6=6 1x7=7 1x8=8 1x9=9
2x2=4 2x3=6 2x4=8 2x5=10 2x6=12 2x7=14 2x8=16 2x9=18
3x3=9 3x4=12 3x5=15 3x6=18 3x7=21 3x8=24 3x9=27
4x4=16 4x5=20 4x6=24 4x7=28 4x8=32 4x9=36
5x5=25 5x6=30 5x7=35 5x8=40 5x9=45
6x6=36 6x7=42 6x8=48 6x9=54
7x7=49 7x8=56 7x9=63
8x8=64 8x9=72
9x9=81