循环语句for
1.1for循环的格式
for(初始化语句;条件判断语句;步长语句(控制体语句)){
循环体语句;
}
1.2 流程:
1)先执行初始化语句对变量进行赋值(只执行一次)
2)判断条件语句是否成立,如果成立,执行 循环体语句
3)执行步长语句(++,--)
4)继续判断条件是否成立,如果还成立, 执行 循环体语句
5)继续执行步长语句(++,--)
...
...
n)当前条件不成立,for循环结束
1.3输出水仙花数
什么是水仙花数:
水仙花数: 三位数
特点:个位数的立方+十位数的立方+百位数上的立方之和 等于该数据本身
如 153 = 1*1*1 + 5 * 5 * 5 +3 * 3 * 3
code:
//水仙花---三位数,明确了范围
for(int x = 100 ; x <1000 ; x ++){
//定义三个变量:分别代表个位,十位,百位上的数据
//153-就是水仙花
int ge = x % 10 ;
int shi = x / 10 % 10 ;
int bai = x /10 /10 % 10 ;
//还需要满足条件才能是水仙花
if(x ==(ge* ge*ge +shi*shi*shi+bai*bai*bai)){
//输出x
System.out.println("水仙花数是:"+x);
}
1.4统计思想
需求:统计所有的水仙花数有多少个?(引入统计变量)
public static void main(String[] args){
//定义一个统计变量
int count = 0 ;
//明确范围
for(int x = 100 ; x < 1000; x ++){
//获取每个位上的数据
int ge = x % 10 ;
int shi = x / 10 % 10 ;
int bai = x /10 /10 % 10;
//判断
if((x==ge*ge*ge+shi*shi*shi+bai*bai*bai)){
//统计变量++
count ++ ;
System.out.println("当前数据是:"+x+",count:"+count) ;
}
}
System.out.println ("水仙花是共有:"+count+"个") ;
}
2.1for–for(嵌套)
for循环嵌套
for(初始化语句;条件表达式;步长语句){
//内层循环是外层循环的循环体语句
for(初始化语句;条件表达式;步长语句){
循环体语句;
}
}
内层循环是外层循环的循环体语句
2.2输出乘法表
public class ChengFaBiao {
public static void main(String[] args) {
for (int i = 1; i <= 9; i++) {
for (int j = 1; j <= i; j++) {
System.out.print(j + "*" + i + "=" + j * i + "\t");//"\t"制表符
}
System.out.println("");
}
}
}
2.3百钱买百鸡问题
for (int g = 0; g <= 33; g++) {
for (int m = 0; m <= 50; m++) {
for (int x = 0; x <= 300; x++) {
if (3 * g + 2 * m + x / 3 == 100 && g+m+x==100&& x%3==0) {
System.out.println("公鸡" + g + "只"+"\t"+"母鸡" + m + "只"+"\t"+"小鸡" + x + "只");
}
}
}
}