流程结构: 循环结构
1.循环结构1
while(1️⃣是否进行循环判断条件){
2️⃣
循环体
}
循环的规则:
当判断条件成立时 执行循环体
当判断条件不成立时 结束循环
当循环条件恒成立时 会出现死循环
可以给死循环 写一个出口 来结束循环
执行 :1->2->1->2->1 判断条件不成立 停止循环
循环增量
1.初始化循环增量
2.寻找循环判断条件
3.写循环体
4.注意:循环体中 一定记住 循环增量要进行改变
// 打印 1-100
int number=0;
while(number<100)
{
System.out.println(number);
number++;
}
// 打印 1-10的和
// 累加思想 可以利用这个思想解决一堆问题
// 定义循环增量(求和 相当于计算循环变量的和)
int number=1;
int sum=0;
while(number<=10){
sum=sum+number;
number++;
}
System.out.println(sum)
// 银行定期存款 5年及以上利率7.5% 否则利率 4.5%
// 输入一个存款年限 本金为10000 计算本金加利息
//累加思想
// 本金=本金+利息
System.out.println("请输入一个年份");
Scanner scanner=new Scanner(System.in);
int year=scanner.nextInt();
double sum=10000;
int num=0;
if(year>5) {
while(num<year) {
sum=sum*1.075;//核心代码
num++;
}
System.out.println(sum);
}else {
while(num<year) {
sum=sum*1.045;
num++;
}
System.out.println(sum);
2.循环结构2
do{
* 1️⃣
循环体
}while(2️⃣循环条件)
循环的规则
先执行一次循环体(无论条件成立都会执行一次循环体) 再去判断循环条件
如果成立 就执行循环体 反之不成立 结束循环
while 与 do-while循环的区别:
while 要先判断然后才能执行循环体
do while 无论如何都要先执行一次循环体 然后判断
变量作用域 (变量的使用范围)
变量的作用域 只在当前的一对大括号中可以使用
出了当前这对大括号 就会访问不到
// 从周一开始打印 并询问明天上班不 输入上班继续打印 反之 停止程序
// 输入不上班 停止程序
int num=1;
Scanner scanner=new Scanner(System.in);
String work="";
do {
System.out.println("星期"+num);
System.out.println("请问明天上班不?输入上班或者不上班");
work =scanner.next();
num++;
}while(work.equals("上班")&& num<=7);
//while的 死循环
//break 也可以跳出循环
// 打印5次 结束循环
int num=0;
while(true)
{
num++
if(num>5)
{
break;
}
System.out.println("hh");
}
3.循环结构3(重点)
for(1️表达式1;2判断条件;3️表达式2)
{
4
循环体
}
执行顺序
1->2->4->3->2->4->3
初始化循环增量 只走一次
// 计数器思想
// 使用for循环 1-100中 是7的倍数 的个数
// 1.输出1-100的数
// 2.判断7的倍数 %7==0
// 3.记录一下有多少数符合要求
// 定义一个变量 记录个数
int count=9;
for(int i=1;i<=100;i++)
{
if(i%7==0)
{
count++;//记录符合要求的数
}
}
System.out.println(count);
for循环的嵌套
/* 打印下面图形 使用for循环
* ****
* ****
* ****
* ****
*
*
* 外层循环控制:控制行数
* 内层循环控制:控制 每一行 与几个元素
*
* 执行顺序
* 1->2
* ->4->5->7->6->5->7->6->5(不成立时 结束内循环)
* ->8->3->2
* ->4->5->7->6->5->7->6->5
* ->8->3->2
* .....
*
*/
// 思考:双层for 循环的执行顺序
//执行顺序
// 1️⃣️⃣ 2️⃣ 3️⃣
for(int i=0 ; i<4 ; i++) {
// 4️⃣ 5️⃣ 6️⃣
for (int j = 0; j <3; j++) {
// 7️⃣
System.out.print("*");
}
// 8️⃣
System.out.println("*");
}
/*
* *****
* ****
* ***
* **
* *
* 尖朝下的 三角形 改变 内循环
*/
for(int i=0;i<5;i++)
{
for(int j=i;j<5;j++)
{
System.out.print("*");
}
System.out.println();
}
/*
* *
* **
* ***
* ****
* *****
* 尖朝上的 三角形 改变 内循环
*/
for(int i=0;i<5;i++)
{
for(int j=0;j<i+1;j++)
{
System.out.print("*")
}
System.out.prinln();
}
/*
* 1
* 12
* 123
* 1234
* 12345
*
*/
for(int i=0;i<5;i++)
{
for(int j=0;j<i+1;j++)
{
System.out.print(j+1);
}
}
/*
* 打印99乘法表
*/
for(int i=1;i<=9;i++){
for(int j=1;j<=i;j++)
{
System.out.print(j+"*"+i+"="+j*i+"\t");
}
System.out.println();
}
//-----*
// ——--* *
// —--* * *
// —-* * * *
// -* * * * *
for(int i=0;i<5;i++)
{
for(j=i;j<5;i++)
{
System.out.print("-");
}
for(j=0;j<i+1;j++)
{
System.out.print("*");
}
System.out.println();
}
2987

被折叠的 条评论
为什么被折叠?



