2024年java基础语法练习5

java基础语法练习5循环结构 顺序结构 从 上往下依次执行 选择结构 根据条件

大家好,我是讯享网,很高兴认识大家。



循环结构

顺序结构,从_上往下依次执行;选择结构,根据条件执行对应的内容

为什么要使用循环结构?

问题一:反复输入数字,判断输出对应是星期几。问题二:求1到100的累加和

主要内容:

while循环;do-while循环;for循环;循环嵌套;break语句;continue语句

while 循环

语法格式:

while(循环条件){   语句; }
讯享网

如果循环体只有一条语句,大括号可以省略。为避免死循环,小括号后面不要加分号

执行流程: 将小于5的整数打印输出。

讯享网int n=1;while(n<5){  //輸出n的値   n++; }
  1. n的值必须先进行初始化
  2. 循环变量n的值必须被改变(死循环)

执行流程分析:

5c139a570001198a10850331.jpg

案例: 求1到5的累加和

package cn.mtianyan.flow2;public class PlusDemo {    public static void main(String[] args) {        // 求1到5的累加和         // 1+2+3+4+5         int n = 1;        int sum = 0; //sum存放和变量         while (n <=5 ){             sum = sum +n;             n++; // 这句不能少         }         System.out.println("sum="+sum);     } }

5c139a570001766b03660075.jpg

执行过程:

5c139a570001d7a706990260.jpg

求1+3+5+7+...+15

讯享网sum +=n; n +=2; //替换n++ 可以实现跳值计算

案例: 循环输出26个英文字母,分两行输出

package cn.mtianyan.flow2;public class CharDemo {    public static void main(String[] args) {        // 循环输出26个英文小写字母,分两行输出         char ch = 'a';        int count=1; // 13个字母时换行         while (ch <= 'z'){             System.out.print(ch+"");            if(count%13 == 0){                 System.out.println();             }             count++;             ch++;         }     } }

运行结果:

5c139a5700012af503450103.jpg

编程练习

使用while循环求1到5的平方和。效果图:

5c139a580001a85002950042.jpg

任务

  1. 定义整型变量n作为循环变量,并初始化
  2. 定义整型变量sum存放和,并初始化
  3. 使用while循环求1到5的平方和
  4. 输出平方和
package cn.mtianyan.flow2;public class LoopDemo {    public static void main(String[] args) {        int n = 1;        int sum = 0;        while (n<=5){             sum +=(n*n);             n++;         }         System.out.println("1到5的平方和为:"+sum);     } }

运行结果:

5c139a580001b20d03480074.jpg

do-while循环

语法格式

do{ 语句; } while(循环条件);

注意事项: do-while循环至少执行一次;循环条件后的分号不能丢

int n= 1;do{  //輸出n的値   n++; } while(n< 5);

局部变量使用前必须被初始化

5c139a580001ecf812430327.jpg

求1到5的累加和

package cn.mtianyan.flow2;public class DoWhileDemo {    public static void main(String[] args) {        // 求1到5的累加和         int n=1;        int sum=0;        do {             sum +=(n*n);             n++;         }while (n<=5);         System.out.println("1到5的平方和为:"+sum);     } }

运行结果:

5c139a580001d5d303870069.jpg

案例:猜字游戏

猜字游戏。要求猜一个介于1到10之间的数字。然后将猜测的值与实际值进行比较,并给出提示,以便能更接近实际值,直到猜中为止。

程序分析:

  1. &java基础语法练习5#32473;定要猜测的数字
  2. 使用循环结构
  3. 循环进行的条件:猜测的数据和实际值不相等
  4. 循环体的内容:输入实际值,及进行判断
  5. 输出猜到的值
package cn.mtianyan.flow2;import java.util.Scanner;public class GuessDemo {    public static void main(String[] args) {        // 设置要猜的数         int number = 6;        int guess;         System.out.println("猜一个介于1到10之间的数");        do {             System.out.println("请输入您猜测的数:");             Scanner scanner = new Scanner(System.in);             guess = scanner.nextInt();            if(guess >number){                 System.out.println("您猜大了");             }else{                 System.out.println("您猜小了");             }         }while (number != guess);         System.out.println("您猜中了!答案为: "+number);     } }

运行结果:

5c139a580001875203670286.jpg

将要猜的数设为随机数:

Math.random()得到[0,1)之间的随机数

          // Math.random()*10+1 表示[0,10)+1:[1,11)之间的随机数。强制类型转换int之后就是1-10了         int number = (int) (Math.random()*10+1);

for循环应用及局部变量作用范围

int n=1;while(n<5)  //輸出n的値   n++;

for循环语法格式:

for(表达式1;表达式2;表达式3) {   语句; }
for(int n=1;n<5;n++) {  //输出语句;}

分号不可省略,可以省略表达式1,2,3。

使用for循环,求1到5的累加和。

package cn.mtianyan.flow2;public class ForDemo {    public static void main(String[] args) {        int sum=0;        for (int n=1;n<=5;n++){             sum +=n;         }        // System.out.println(n); // 局部变量的作用范围         System.out.println("sum="+sum);     } }

运行结果:

5c139a580001ddaa03540075.jpg

int n= 1;在循环体中只执行一次

5c139a590001775a03240104.jpg

局部变量,主方法中定义的都是局部变量。局部变量只在定义它的大括号内有效!

for循环的注意事项

三个表达式都是可以省略

for(表达式1;表达式2;表达式3) { 语句;   }

将10以下的整数打印输出:

package cn.mtianyan.flow2;public class ForDemo1 {    public static void main(String[] args) {        for (int i=0;i<=10;i++){             System.out.print(i+" ");            // 循环结束时i值为11         }     } }

运行结果:

5c139a5900017cb804000051.jpg

省略表达式:

package cn.mtianyan.flow2;public class ForDemo1 {    public static void main(String[] args) {        int i=0;        // for(;;){         while(true){             System.out.print(i+" ");            // 循环结束时i值为11             if(i>=10){                break;             }             i++;         }     } }

循环输入数字1-10并输出,如果输入0则跳出循环:

package cn.mtianyan.flow2;import java.util.Scanner;public class InputZeroBreak {    public static void main(String[] args) {         System.out.println("请输入你需要打印的数字,输入0时退出");         Scanner scanner = new Scanner(System.in);        int n;        while(true){             n = scanner.nextInt();            if(n==0){                 System.out.println("接收到0输入,已退出");                break;             }             System.out.println("n="+n);         }     } }

运行结果:

5c139a59000187db03540210.jpg

package cn.mtianyan.flow2;public class ForExercise {    public static void main(String[] args) {        int i;        int j;        for (i=0,j=1;j<5;j+=3){             i = i+j;         }         System.out.println("i="+i);         System.out.println("j="+j);     } }



作者:天涯明月笙
链接:https://www.jianshu.com/p/db00ea9a00f9

小讯
上一篇 2024-12-31 14:24
下一篇 2024-12-29 07:04

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/5716.html