ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

五、 循环结构基础(头歌实践平台)

2021-05-28 20:02:15  阅读:252  来源: 互联网

标签:System int 代码 实践 while 头歌 循环 public



第1关:Java循环结构之while循环


任务描述
本小节需要你完成一个做俯卧撑的小程序,效果如下:

在这里插入图片描述

相关知识
Java中常用的循环有三种:while,do…while,for。
本小节我们先来看看while循环。

while循环的特点
循环顾名思义就是:重复的做某个事情,Java中的循环也是如此,当我们在开发中需要重复的做某个事情的时候,你就要想到循环了,接下来我们就来看看while循环是怎么使用的吧!

while(条件){
<条件成立执行的代码>
}
哈哈,是不是似曾相识呢?和我们在之前中讲到的if语句很像吧。没错while语句的用法和if差不多,if语句的特点是如果小括号中的条件成立,就执行一次大括号中的代码,那while循环语句的特点呢?我选择保密。

while循环体验
在D盘下新建一个文件HelloWorld.java输入下列代码。
在这里插入图片描述

  1. 编译运行。
    在这里插入图片描述

做完上面两步之后你会发现你的程序一直在运行,根本停不下来,这是什么原因呢?也许你已经看出来了。
在这里插入图片描述

可是怎么解决呢?哈哈,授人以鱼不如授人以渔。
编程要求
在start-end区域中填充代码,使程序能输出如下效果:

在这里插入图片描述

测试说明
如果你写了一个死循环,评测的时候会导致评测超时,如果右侧一直在加载,说明评测超时了,这个时候请刷新你的页面。

代码实现

package step1;

public class HelloWorld {
	public static void main(String[] args) {
		
		/*****start*****/
		 int i=0;
        while(i<6){
            i++;
            System.out.println("做了"+ i +"个俯卧撑");    
        }
		/*****end*****/
	}
}

第2关:Java循环结构之while循环练习


任务描述
使用while循环实现一个1到100的整数相加的小程序。效果图如下:
在这里插入图片描述

相关知识
经过上一小节,你应该认识到了,循环就像在操场跑圈,而编写一个循环语句需要三个要素:1.控制循环的条件,2.控制循环的次数,3.编写循环执行的代码;

在这里插入图片描述
在这里插入图片描述

知道了这些知识,你应该可以完成本关的任务了吧,我们一起来思考一下。 要实现一个从1100整数相加的程序,如果没有学循环,你是不是这样写呢? java int sum = 1 + 2 + 3 + 4 + 5 +…..+ 100;不过现在我们学了循环就不能用前面那么费劲的方式写了,可以发现这个程序需要我们重复做一个事情,而且数据也是不断变化的,所以需要你思考两个问题: 1. 重复做的事情是什么? 1. 哪些数据是变化的?
想好了这两个问题就可以开始了,加油。

编程要求
在start-end区域中填充代码,使用while循环实现一个1到100的整数相加,并输出相加后的结果。效果图如下:
在这里插入图片描述
测试说明
平台会对你的代码进行运行测试,如果实际输出与预期输出相同,则算通关

代码实现

package step2;

public class HelloWorld {
	public static void main(String[] args) {
				
		/*****start*****/
		 int sum=0;
        int n=0; 
        while(n<100) {
             n++;
             sum+=n; 
             }
        
        System.out.println("1到100相加的结果为"+sum);
        		
		/*****end*****/			
	}
}

第3关: Java循环结构之do…while循环


任务描述
本关需要使用do…while循环,完成一个计算1到100之间6的倍数出现次数的小程序。

相关知识
do…while循环
do-while和while区别仅在于while先执行循环条件判断再执行循环体,do-while先执行循环体后进行条件判断。例如:

在这里插入图片描述

语法结构:

do
{
<若干语句>
} while(条件);

执行过程:
在这里插入图片描述

使用方法:

在这里插入图片描述

能告诉我输出什么吗?
编程要求
在start-end区域中填充代码,完成计算1到100之间6的倍数出现次数的小程序。
提示:一个数对另一个数取模(%)等于0那这个数就是另一个数的倍数,例如:

int i = 30;
int j = 5;
System.out.println(i%6);  //输出0
System.out.println(j%6);  //输出5

测试说明
如果你编写死循环,会评测超时。

代码实现

package step3;

public class HelloWorld {
	public static void main(String[] args) {
		int count= 0;	//定义变量存储6的倍数出现的次数
		/*****start*****/
		 int i=1;
        do{
           if(i%6==0){
            count++;
            i++;   
           }
           i++;
        }
        while(i<=100);    
		
		/*****end*****/
		System.out.println("6的倍数出现的次数为:" + count);
	}
}

第4关:break和continue关键字


任务描述
使用本关所学内容完成一个小程序,输出如下结果:

在这里插入图片描述

相关知识
当我们在循环处理某一事物时,可能会在某种特定的条件下需要结束整个循环过程,或者是结束本次循环继续下一次循环,那这个时候应该怎么办呢?两个关键字来帮你解决问题,break和continue。

break关键字
先来看一段代码的运行效果,如下:
!](https://www.icode9.com/i/ll/?i=20210528104418189.png?,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0NhZXNhclF1,size_16,color_FFFFFF,t_70)

可以发现只要你一直输入1程序就会不断的提示你输入选项,可是当你输入2的时候程序就会终止,你能根据这个运行结果想到要实现这个效果,需要编写什么代码吗?
可能你已经猜到了,需要使用到break关键字,break翻译过来是“打断”的意思,放在Java程序中的作用就是:结束整个循环过程
好了,现在来一起看看刚刚那段效果的源代码吧。

在这里插入图片描述

现在你应该基本了解break的用法了,不过我还有个小秘密要告诉你:

在这里插入图片描述

如果我们在循环中使用switch语句,那么在switch语句中break就不能结束当前循环了,而只能结束switch语句。

continue关键字
continue关键字的用途是:结束一次循环事件,开始下一个循环事件,也就是忽略该语句之后的语句,执行循环体的下一次循环。
例如:

int i = 0;
while(i < 4){
if(i == 2){
i++;
continue;
}
System.out.println(i);
i++;
}

输出结果:

0
1
3

思考题
你能根据所学知识,实现如下效果吗?
在这里插入图片描述

在评论区,把你的答案贴出来吧。

编程要求
请在start-end区域中填充代码,使用本关所学知识,使你的程序输出如下结果:

在这里插入图片描述

要求:当 i = 13 时,输出其是奇数还是偶数后结束循环。

测试说明
平台会对你的代码进行运行测试,如果实际输出与预期输出相同,则算通关

代码实现

package step4;

public class HelloWorld {
	public static void main(String[] args) {
		
		int i = 0;
		
		while(i <= 20){
			i++;
			/*****start*****/
			 if( i%2==0 ){
                System.out.println( i + "是偶数");
            }
            else {
                System.out.println(i + "是奇数");
            }    
            if( i == 13 ) {
                break;
            }

			
			/*****end*****/
		}
		
	}
}

**
第5关:Java循环结构之for循环**


任务描述
使用本关所学知识,实现一个自然数N的阶乘。

在这里插入图片描述

相关知识
本关我们来学习Java中最常用的循环语句——for循环,for循环的功能和while循环大致相同,只是写法上有区别。如下:

在这里插入图片描述

具体使用方式:

for(初始化语句;条件;控制循环次数){
<若干语句>
}

在这里插入图片描述

输出:

做了1个俯卧撑
做了2个俯卧撑
做了3个俯卧撑
做了4个俯卧撑
做了5个俯卧撑

编程要求
是不是会用了呢?来试试吧,在start-end区域中填充代码,用for循环实现一个自然数N的阶乘。
例如:给定一个数数N=5,那么它的阶乘为12345。
效果图如下:
在这里插入图片描述

测试说明
平台会对你的代码进行运行测试,如果实际输出与预期输出相同,则算通关。

代码实现

package step5;

import java.util.Scanner;

public class HelloWorld {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请给定一个自然数N:");
        //获取输入的整数N
        int sum = 1;        
        /*****start*****/
        for(int N = sc.nextInt(); N>0; N--) {
          sum=sum*N;
        }

        /*****end*****/
        
        System.out.println("自然数N的阶乘为" + sum);
        
    }
}

标签:System,int,代码,实践,while,头歌,循环,public
来源: https://blog.csdn.net/CaesarQu/article/details/117373311

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有