2021-04-26

这篇博客介绍了JAVA编程中的控制流程概念,通过实例展示了如何计算100以内奇数和偶数的和,打印九九乘法表,实现1000以内被7整除的数每五行输出,以及两种方法打印三角形。这些练习涵盖了循环、嵌套循环和条件判断等基础控制结构的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

二.JAVA系列学习笔记之控制流程
1.控制流程是程序当中不可少的一部分,如果此处具有一定的其他语言的基础的话,此处极容易上手
下面是练习程序流程几个例子,是笔者学习过程中练习的几个小练习题
1.1 对100以内的奇数和偶数进行求和
此练习题的解决方式有两种:方案一利用循环对100以内的奇数和偶数进行判定如:i%2==0,满足此条件的即为偶数,另一半即为奇数。因此在此基础上再添加一个if判断语句即可,代码见2.1
方案二:这个方法比较粗略:设定好初值,奇数设定初值为1,偶数设定初值为2,然后每步进行加2操作,执行50步,也可以解决奇数和以及偶数和的问题。(练习未加保存,本文不再展示代码)
1.2 打印输出九九乘法表
九九乘法表是一个比较经典的练习题,需要用到嵌套语句,双循环语句,笔者在练习的过程中出现了,打印成列的情况,在进行查询之后发现,println(),可以实现自动换行,导致直接出现成列的情况,如果改善,只需要使用print()即可,当然print(“\n”)也可以实现上述功能。
1.3 1000以内被某一个数整除,此处以7为例,同时实现5个一排输出
对于此问题,也是一个取余问题,类似1.1中只要满i%7=0,即可,如果想实现5个一排输出则需要再进行一次嵌套判断条件为i%(75)=0,满足此条件进行换行即可
1.4打印三角形
三角形的打印属于上述过程的一个进阶型的练习,方案一:需要使用四个for循环进行
首先对三角形的拆分,我们发现这个三角形左右两侧对称,左侧再次拆分我们发现实际可以将这个再次拆分为两部分,一侧为空白,一侧为
,那么只需要借助两次循环就可以实现,对于右侧,只需要对有**的部分再用一次循环输出*,另一次for循环输出空白即可完成,可以作为练习使用
方案二:利用三角形之间的关系,每一层中输出的应该是2N-1,空格也是逐层进行减小的,可以利用此关系进行,只需要进行三次for循环即可,相对于方案一运算会更快。代码如下
2练习代码如下
2.1 对100以内的奇数和偶数进行求和

public class Demo08 {
    public static void main(String[] args) {
        int i=0;
        int j=0;
        int sum1=0,sum2=0;
        int sum=0;
        for(i=0;i<=100;i++)
        {
        //判断i的奇数或者偶数
         if (i%2==0)
         {
             System.out.println(i);
             sum1=sum1+i;
             System.out.println(sum1);
         }
         else {
            sum2=sum2+i;
            System.out.println(sum2);
        }
        sum =sum1+sum2;
            System.out.println("总和为:"+sum);
            System.out.println("偶数和:"+sum1);

            System.out.println("奇数和:"+sum2);
         }
    }}

2.2 打印输出九九乘法表

public class Demo03 {
    public static void main(String[] args) {
        System.out.println("乘法表打印如下:");
        for (int i=1; i <10 ;i++)
        {
            for (int j=1;j<=i;j++)
            {
                //int sum = i*j;
                //System.out.println("%d*%d=%d\t" i,j,sum);
                System.out.print( " " +i+"*"+j+"="+(i*j) + " \t ");
              if(i==j) {
                  System.out.print("\n");
              }
            }
        }
    }
}

2.3 1000以内被某一个数整除,此处以7为例,同时实现5个一排输出

public class Demo10 {
    public static void main(String[] args) {
        //1000以内可以对5整除的数
        for (int i = 0; i < 1000; i++) {
            if (i%7==0){
                System.out.print(i+"\t");
                if (i%(7*5)==0){
                    System.out.println();
                }
            }

        }
    }
}

2.4 打印三角形
步骤一:先打印三角形的一半,此处为显示出来,将本来是空白的进行了打印

public class Demo11 {
    public static void main(String[] args) {
        for (int i = 1; i <= 5; i++) {
            for (int j =5; j >= i; j--) {
                System.out.print("*");
                if (i==j){
                    System.out.println(" ");
                }

            }

        }
    }
}

效果图如下在这里插入图片描述
步骤二:则是对步骤已进行翻转,在使用两个for循环来完成即可完成
方案二:

public class Demo11 {
    public static void main(String[] args) {
        for (int i = 0; i < 4; i++) {
            for (int j = i; j < 3; j++) {
                System.out.print(" ");}
                for (int k = 0; k <2* i+1; k++) {
                        System.out.print("*");
                        }
                System.out.println();

                    }

                }

            }

效果图如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值