java–for循环及相关案例

  • Post author:
  • Post category:java


1、for循环:

package cn.bdqn.demo02;

public class ForDemo01 {

	public static void main(String[] args) {
		
		// 使用for循环输出100次:好好学习,天天向上
		for(int i =1;i<=100;i++){
			System.out.println("第"+i+"遍:好好学习,天天向上");
		}
		
		System.out.println("程序执行完毕");

	}

}


* for循环:

*     语法结构:

*         for(初始值;循环条件;迭代部分){


*             循环操作

*         }

*    执行规律:

*         1)首先执行1次初始值代码

*         2)判断循环条件是否成立,如果循环条件为true,则执行{}里的循环操作代码,执行循环操作后,进行迭代,迭代完再进行循环条件判断,根据循环条件的结果决定是否继续执行循环操作

*             如果循环条件为false,则结束整个for循环结构,继续往下执行for循环结构之后的代码

*    注意:

*        1)初始值只执行1次

*        2)循环条件只能是布尔值,要么为true,要么为false

*        3)如果第一次判断循环条件就不满足,那么循环操作一次都不会执行。

2、相关案例代码:

package cn.bdqn.demo02;

import java.util.Scanner;

public class ForDemo02 {

	public static void main(String[] args) {
		// 循环输入某同学S1结业考试的5门课成绩,并计算平均分
		
		Scanner  sc = new Scanner(System.in);
		
		System.out.println("请输入你的姓名:");
		String name =sc.next();
		
		double sum = 0;
		
		for(int i=1;i<=5;i++){
			System.out.println("请输入第"+i+"门课的成绩:");
			double scors=sc.nextDouble();
			sum+=scors; // sum=sum+scores;
		}
		
		//求平均分
		double avg = sum/5;
		
		System.out.println(name+"5门课的平均分是:"+avg);

	}

}
package cn.bdqn.demo02;

public class ForDemo03 {

	public static void main(String[] args) {
		// 使用for循环求1-100之间所有整数之和
		
		int sum1 = 0;
		for(int i=1;i<=100;i++){
			sum1+=i;
		}
		
		System.out.println("1-100之间所有整数之和:"+sum1);
		
		
		//使用for循环求1-100之间所有偶数之和
		int sum2=0;
		for (int i = 1; i <=100; i++) {
			if(i%2==0){
				sum2+=i;
			}
			
		}
		System.out.println("1-100之间所有偶数之和:"+sum2);
	}

}
package cn.bdqn.demo02;

import java.util.Scanner;

public class ForDemo04 {

	public static void main(String[] args) {
		Scanner  sc = new Scanner(System.in);
		System.out.println("请输入一个整数值:");
		int num = sc.nextInt();
		System.out.println("根据这个值可以输出以下加法表:");
		
		for(int i =0;i<=num;i++){
			System.out.println(i+"+"+(num-i)+"="+num);
		}

	}

}
package cn.bdqn.demo02;

import java.util.Scanner;

public class ForDemo05 {

	public static void main(String[] args) {
		Scanner  sc = new Scanner(System.in);
		
		System.out.println("请输入一个整数值:");
		int num = sc.nextInt();
		System.out.println("根据这个值可以输出以下加法表:");
		
		for(int i =0,j=num;i<=num&&j>=0;i++,j--){
			System.out.println(i+"+"+j+"="+num);
		}

	}

}

3、for循环中的常见问题:

package cn.bdqn.demo02;

public class ForDemo06 {

	public static void main(String[] args) {
		// for循环中的常见问题

		// 问题1:for循环中缺少初始值,编译不能通过,初始值可以写在for循环外面,也可以写在for循环()内
		// int i =1;
		// for(;i<=10;i++){
		// System.out.println(i);
		// }

		// 问题2:for循环缺少循环条件,会进入死循环
		// for(int i=0;;i++){
		// System.out.println("这是 "+i);
		// }

		//问题3:for循环缺少迭代部分,会进入死循环,可以在{}里添加迭代代码,也可以在()最后位置添加迭代代码
		// for (int i = 0; i < 10;) {
		// System.out.println("这是 " + i);
		//
		//
		// }
		
		//问题4:for循环缺少初始值、循环条件、迭代,会进入死循环
		for(;;){
		     System.out.println("这是测试");
		}


	}

}

4、for循环输出*形图案:

package cn.bdqn.demo03;

public class LoopDemo01 {

	public static void main(String[] args) {
		// 在控制台输出*****
		
		//方法1:
//		System.out.println("*****");
		
		//方法2:
		// System.out.print("*");
		// System.out.print("*");
		// System.out.print("*");
		// System.out.print("*");
		// System.out.print("*");
		
		//方法3
		for(int i =1;i<=5;i++){
			System.out.print("*");
		}
		

	}

}
package cn.bdqn.demo03;

public class LoopDemo02 {

	public static void main(String[] args) {
		/*
		 * 在控制台输出5行5列*
		 * 
		 * 	*****
		 * 	*****
		 * 	*****
		 * 	*****
		 * 	*****
		 */
		
		//方法1:
//		System.out.println("*****");
//		System.out.println("*****");
//		System.out.println("*****");
//		System.out.println("*****");
//		System.out.println("*****");
		
		//方法2:
//		for(int i =1;i<=5;i++){
//			System.out.println("*****");
//		}
		
		//方法3:
//		外层循环变量变化一次,内层循环变量要变化一遍
		//外层循环变量控制行数
		for(int i =1;i<=8;i++){
			//内层循环变量控制每一行的列数
			//内层for循环的作用是在一行输出5个*
			for(int j =1;j<=5;j++){
				System.out.print("*");
			}
			//换行
			System.out.println();
		}

	}

}
package cn.bdqn.demo03;

public class LoopDemo03 {

	public static void main(String[] args) {

		//外层循环变量变化1次,内层循环变量变化1遍
		for(int i =1;i<=5;i++){
			System.out.println(i);
			for(int j =10;j<=50;j+=10){
				System.out.print(j+" ");
			}
			//换行
			System.out.println();
		}

	}

}
package cn.bdqn.demo03;

public class LoopDemo04 {

	public static void main(String[] args) {
		/*
		 * 在控制台输出如下图形
		 * 		    *****
		 * 	       *****
		 * 		  *****
		 * 		 *****
		 * 		*****
		 */
		
		//外层循环控制行数
		for(int i =1;i<=5;i++){
			//输出每一行的空格
			for(int k =5-i;k>0;k--){
				System.out.print(" ");
			}
			
			//内层循环控制每一行的列数,内层循环输出每一行的*
			for(int j =1;j<=5;j++){
				System.out.print("*");
			}
			//换行
			System.out.println();
		}
	}

}
package cn.bdqn.demo03;

public class LoopDemo05 {

	public static void main(String[] args) {
		//外层for循环控制行数
		for(int i=1;i<=6;i++){
			//先输出每一行前面的空格数目
			for(int j =6-i;j>0;j--){
				System.out.print(" ");
			}
			
			//再输出每一行的*
			for(int k =2*i-1;k>0;k--){
				System.out.print("*");
			}
			//换行
			System.out.println();
		}

	}

}



版权声明:本文为asdfg2047原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。