1、输出倒直角三角形:
思路:
(1)图形有很多行,每一行对应不同个数,想到for嵌套
(2)外循环控制行数,内循环控制个数
(3)每一行的个数随着行数的增加减一,第一行的个数最多,因此应该用第一行的个数减去行数就是每一行应该输出的个数
(4)每次内循环结束后应该换行
/*
倒直角三角形
*****
****
***
**
*
*/
class ForTest01
{
public static void main(String [] args){
for(int x=0;x<=4;x++){
for(int y=0;y<=4-x;y++){//或者for(int y=x;y<=4;y++)
System.out.print("*");
}
System.out.print("\n");
}
}
}
2、正直角三角形
/*
正直角三角形
*
**
***
****
*****
*/
class ForTest02
{
public static void main(String [] args){
for(int x=0;x<=4;x++){
for(int y=0;y<=x;y++){
System.out.print("*");
}
System.out.print("\n");
}
}
}
3、输出由递减数字组成的倒直角三角形,此处的三角形虽然输出内容改变,但是图形没有改变,只需要再循环中根据控制条件的改变输出对应的值即可。
/*
练习3:输出
43210
3210
210
10
0
*/
class ForTest03
{
public static void main(String [] args){
for(int x=0;x<=4;x++){
for(int y=4-x;y>=0;y--){
System.out.print(y);
}
System.out.print("\n");
}
}
}
4、输出由数字组成的正直角三角形,每行的数字相同
/*
输出
1
22
333
4444
55555
*/
class ForTest03
{
public static void main(String [] args){
for(int x=0;x<=4;x++){
for(int y=4;y>=x;y--){
System.out.print(y);
}
System.out.print("\n");
}
}
}
5、输出倒等腰三角形
思路1:可以将等腰三角形放在坐标轴上,横轴代表j,数轴代表i,可以观察到三角形是由三条直线所构成的,因此算出三条直线的方程式,观察所围成的三角形上的点分别在三条线的上方还是下方,得出范围即可,在范围内的输出*,不在的输出空格
/*
输出
* * * * *
* * * *
* * *
* *
*
*/
class ForTest05{
public static void main(String [] args){
for(int i=1;i<=5;i++){
for(int k=1;k
空心等腰梯形
import java.util.Scanner;
class Homework02{
public static void main(String [] args){
int n = new Scanner(System.in).nextInt();
for(int i = 0;in&&j-i
6、输出九九乘法表
class ForTest06{
public static void main(String [] args){
for(int x=1;x<=9;x++){
for(int y=1;y<=x;y++){
System.out.print(y+"*"+x+"="+(x*y)+"\t");
}
System.out.println();
}
}
}
7、输出菱形,菱形需要四条边才能围成,相应的判断条件为四个
/*
*
***
*****
*******
*****
***
*
*/
Scanner scanner=new Scanner(System.in);
System.out.println("请输入菱形的边长:");
int n=scanner.nextInt();
for(int i=1;i<=2*n-1;i++){
for(int j=1;j<=2*n-1;j++){
//有的时候是输出*,有的时候是输出空格。
if(i+j<=n||i-j<=-n||i-j>=n||i+j>=3*n){
System.out.print(" ");
}else{
System.out.print("*");
}
}
System.out.println();
}
空心菱形
import java.util.Scanner;
class RhombusPrint{
public static void main(String [] args){
int n = new Scanner(System.in).nextInt();
for(int i=1;i<=2*n-1;i++){
for(int j=1;j<=2*n-1;j++){
/*if(i+j==n||i+j==3*n||i-j==n||j-i==n){
System.out.print("*");
}else{
System.out.print(" ");
}*/
if(i+j>n&&i+j<3*n&&i-j