格式:
for(初始化语句;条件判断语句;条件控制语句){
循环语句;
}
流程:
1.执行初始化语句
2.执行条件判断语句,看其结果是true还是false
如果是false,循环结束
如果是true,继续执行
3.执行循环体语句
4.执行条件控制语句
5.回到2继续
for(int i = 1; i <= 5; i++){ System.out.println("HELLOW!!!"); }
案例:输出数据。
需求:在控制台输出1-5和5-1的数据。
for(int i = 1; i <= 5; i++){ System.out.println(i); } System.out.println("------------"); for(int a = 5;a >= 1;a--) { System.out.println(a); }
案例:求和。
需求:求1-5之间的数据和,并把求和结果在控制台上输出。
int sum = 0; for(int i = 1; i <= 5; i++){ sum += i ; } System.out.println(sum);
案例:求偶数和。.
需求:求1-100之间的偶数和,并把结果输出。
法一:
int sum = 0; for(int i = 0; i <= 100; i = i+2){ sum += i ; } System.out.println(sum);
法二:
int sum = 0; for(int i = 1; i <= 100; i++){ if(i % 2 == 0){ sum += i; } } System.out.println(sum);
案例:水仙花。
分析:
1.三位数的个位数如何求
371: 1就是原数对10进行取余运算的结果。 371 % 10 = 1
2.三位数的十位数如何求
371: 通过原数除以10,可以将7移到个位上(整数) 371 / 10 = 37
37通过对10取余,可得到7 37%10 = 7
3.三位数的百位数如何求
371: 3就是原数除以100的结果 (整数) 371 / 100 = 3
for(int i = 100;i < 1000;i++){ int a = i % 10; //获取个位数 int b = i / 10 % 10; //获取百位数 int c = i / 10 / 10 % 10; //获取百位数 if(a*a*a + b*b*b + c*c*c == i){ //判断是否为水仙花数 System.out.println(i); } }
案例:统计。
统计水仙花个数,并输出个数。
int count = 0 ; //定义变量,保存水仙花个数 for(int i = 100;i < 1000;i++){ int a = i % 10; //获取个位数 int b = i / 10 % 10; //获取百位数 int c = i / 10 / 10 % 10; //获取百位数 if(a*a*a + b*b*b + c*c*c == i){ //判断是否为水仙花数 count++; //System.out.println(i); } } System.out.println("水仙花数共有: " + count);2. while循环语句
格式:
初始化语句;
while(条件判断语句){
循环体语句;
条件控制语句;
}
流程:
1.执行初始化语句
2.执行条件判断语句,看其结果是true还是false
如果是false,循环结束
如果是true,继续执行
3.执行循环体语句
4.执行条件控制语句
5.回到2继续。
案例:珠穆朗玛峰。
需求:珠峰(8848.43米=8844430毫米),假如有一张纸,厚度为0.1毫米。请问,折叠多少次,可以折成珠峰的高度?
分析:
因为要反复折叠,所以使用循环,但是不知道折叠多少次,这种情况更适合使用while循环。
每折叠一次,厚度加倍
设置计数器,计算折叠次数
int count = 0; //定义count变量,计算次数 int zf = 8844430; double paper = 0.1; while(paper <= zf){ paper *= 2; //纸张厚度加倍 count++; //次数累加 } System.out.println("折叠次数为:" +count);3. do…while循环语句
基本格式:
初始化语句
do{
循环体语句;
条件控制语句;
}while(条件判断语句);
int i = 1; do{ System.out.println("HELLOW!!!"); i++; }while(i <= 5);3.三种循环区别
1.for循环和while循环是先判断再循环,do…while是先循环再判断
2.dor循环里的变量是局部变量,while是全局变量
3.三种循环的死循环:for( ; ;);while(true) //Ctrl+c 可结束死循环
continue : 用在循环中,基于条件控制,跳过某次循环体内容的执行,继续下一次的执行
break:用在循环中,基于条件控制,终止循环体内容的执行,也就是说结束当前的整个循环。
顺序语句: 以分号结尾,表示一句话的结束
分支语句:一对大括号表示if的整体结构,整体描述一个完整的if语句
一对大括号表示switch的整体结构,整体描述一个完整的switch语句
循环语句:一对大括号表示for的整体结构,整体描述一个完整的for语句
一对大括号表示while的整体结构,整体描述一个完整的while语句
do…while以分号结尾,整体描述一个完整的do…while语句
任何一句话都可以看成是一句话,一句代码。
分支语句中包含分支语句称为分支嵌套,
循环语句中包含循环语句称为循环嵌套。
作用:用于产生一个随机数
使用步骤:
1.导包
import java.util.Random //导包的动作出现在类定义的上面
2.创建对象
Random r = new Random(); // r是变量名,可以变,其他不能变
3.获取随机数
int number = r.nextInt(10); // 获取数值范围 [0,10)
number是变量名可以变,10也可以变,其他不能变
案例:猜数字
需求:程序自动生成一个1-100之间的数字,实用程序实现猜出这个数字是多少?
给出三种提示:
如果猜的比真实数字大,就提示你猜的数据大了,
如果猜的比真实数字小,就提示你猜的数据大小,
如果猜的和真实的一样,提示恭喜你猜对了。
import java.util.Random; //导包,产生随机数 import java.util.Scanner; //控制台输入数据 public class one { public static void main(String[] arges){ Random r = new Random(); //创建对象 int number = r.nextInt(100) + 1 ; while(true){ Scanner sc = new Scanner(System.in); System.out.println("请输入你猜的数字:"); int guessnumber = sc.nextInt(); if(guessnumber > number){ System.out.println("你猜的数字大了!!!"); }else if(guessnumber < number){ System.out.println("你猜的数字小了!!!"); }else{ System.out.println("猜对了!!!"); break; //猜对之后要中断程序,否则就一直死循环 } } } }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)