循环结构
循环结构的分类:for循环;
while循环;
do...while循环(不作要求)
for循环
语法:for( 循环变量的初始化语句;循环条件的判断语句;循环变量的改变语句) {
循环体语句
}
案例
package com. DaYu;
public class Demo01 {
public static void main ( String[ ] args) {
for ( int i = 0 ; i<= 3 ; i++ ) {
System. out. println ( "跑了" + i+ "圈" ) ;
}
}
}
1. 计算1 - 100 的和
package com. DaYu;
public class Demo01 {
public static void main ( String[ ] args) {
int sum = 0 ;
for ( int i = 1 ; i<= 100 ; i++ ) {
sum+= i;
System. out. println ( sum) ;
}
}
}
2. 找出100 - 999 之间的水仙花数
package com. DaYu;
public class Demo01 {
public static void main ( String[ ] args) {
for ( int i = 100 ; i< 1000 ; i++ ) {
int ge = i% 10 ;
int shi = i/ 10 % 10 ;
int bai = i/ 100 ;
int sum = ge* ge* ge+ shi* shi* shi+ bai* bai* bai;
if ( sum == i) {
System. out. println ( sum) ;
}
}
}
}
while循环
语法:
循环变量的初始化语句;
while(循环条件的判断语句) {
循环体语句;
循环变量的改变语句;
}
案例
package com. DaYu;
public class Demo01 {
public static void main ( String[ ] args) {
int i = 0 ;
while ( i<= 3 ) {
System. out. println ( "跑了" + i+ "圈" ) ;
i++ ;
}
}
}
死循环
for(;;) {
循环体语句
}
while(true) {
循环体语句
}
循环控制语句
break:直接跳出循环,结束整个循环。
continue:跳过本次循环,继续进行下次循环。
循环的嵌套
在一个循环结构中,循环体又是一个循环结构。
案例:打出规定的图形
* * * * *
* * * * *
* * * * *
package com. DaYu;
public class Demo01 {
public static void main ( String[ ] args) {
for ( int i = 1 ; i<= 3 ; i++ ) {
for ( int j = 1 ; j<= 5 ; j++ ) {
System. out. print ( "*" ) ;
}
System. out. println ( ) ;
}
}
}
*
* *
* * *
* * * *
* * * * *
package com. DaYu;
public class Demo01 {
public static void main ( String[ ] args) {
for ( int i = 1 ; i<= 5 ; i++ ) {
for ( int j = 1 ; j<= i; j++ ) {
System. out. print ( "*" ) ;
}
System. out. println ( ) ;
}
}
}
打印输出“九九乘法表”
package com. DaYu;
public class Demo01 {
public static void main ( String[ ] args) {
for ( int i = 1 ; i<= 9 ; i++ ) {
for ( int j = 1 ; j<= i; j++ ) {
System. out. print ( i+ "*" + j+ "=" + ( i* j) + " " ) ;
}
System. out. println ( ) ;
}
}
}
拓展题目
1. 读入一个整数,如果是1 ~ 5 之间,则分别输出5 个福娃的名字,否则输出“北京欢
迎你”。
package com. DaYu;
import java. util. Scanner;
public class Demo01 {
public static void main ( String[ ] args) {
Scanner sc = new Scanner ( System. in) ;
System. out. println ( "请输入一个整数" ) ;
int n = sc. nextInt ( ) ;
switch ( n) {
case 1 :
System. out. println ( "贝贝" ) ;break ;
case 2 :
System. out. println ( "晶晶" ) ;break ;
case 3 :
System. out. println ( "欢欢" ) ;break ;
case 4 :
System. out. println ( "莹莹" ) ;break ;
case 5 :
System. out. println ( "妮妮" ) ;break ;
default : System. out. println ( "北京欢迎你" ) ;
}
}
}
2. 计算1 + 3 + 5 + . . . +99 的和。
package com. DaYu;
public class Demo01 {
public static void main ( String[ ] args) {
int sum = 0 ;
for ( int i = 1 ; i< 100 ; i++ ) {
if ( i% 2 != 0 ) {
sum+= i;
}
}
System. out. println ( sum) ;
}
}
3. 求100 以内所有能被3 整除但不能被5 整除的数字的和。
package com. DaYu;
public class Demo01 {
public static void main ( String[ ] args) {
int sum = 0 ;
for ( int i = 1 ; i< 100 ; i++ ) {
if ( i% 3 == 0 && i% 5 != 0 ) {
sum+= i;
}
}
System. out. println ( sum) ;
}
}