首页 > 其他分享 >循环语句

循环语句

时间:2023-08-14 15:57:10浏览次数:30  
标签:语句 int void System while 循环 public

循环语句

For循环

基本语法

for(循环变量初始值;循环条件;循环变量迭代){

​ 代码块;

}

执行流程

image-20230813142122790

注意事项

  1. for循环的初始化变量,循环迭代值,可以放在其他地方。但是分号不能省略。例:for(;循环判断条件;)
  2. 初始值可以定义在循环体之前,迭代值可以写在循环体之内。
  3. for(;;)死循环
  4. 循环初始值可以有多条赋值语句,但是类型要求相同中间使用逗号分隔,循环迭代值也可以有多个值,用逗号分隔

练习

public class For{
	public static void main(String[] args) {
		int sum = 0;
		//打印1-100的整数
		for (int i = 1 ; i <= 100 ; i++) {
			//判断是否能被9整除
			if (i % 9 == 0) {
				System.out.println(i);
				//累加其和
				sum += i;
			}
		}
		System.out.println("总和为:"+sum);//594
	}
}
public class For{
	public static void main(String[] args) {
        /*输出两个数加起来等于5的所有情况
        */
		int sum = 0;
		for (int i = 0; i <= 5 ; i++ ) {
			for (int j = 0 ; j <= 5 ;  j++) {
				sum = i + j;
				if(sum == 5){
					System.out.println("============");
					System.out.println(i+"+"+j+"="+sum);
				}
			}

		}
	}
}

while循环

基本语法

循环变量初始化;

while(条件){

循环体;

循环变量迭代;

}

执行流程

image-20230814102106492

注意事项

  1. 循环条件返回是一个boolean值
  2. while循环是先判断后执行语句

练习

public class For{
	public static void main(String[] args) {
        /*输出1-100能被3整除的数字*/
		int i = 1;
		while (i <= 100) {
			if (i % 3 == 0) {
				System.out.println(i);
			}
			/*迭代值放在if后面,否则无法输出结果,就是死循环*/
			i++;
		}
	}
}
public class For{
	public static void main(String[] args) {
        /*40-200之间的偶数*/
		int i = 40;
		while (i <= 200) {
			if (i % 2 == 0) {
				System.out.println(i);
			}
			/*迭代值放在if后面,否则无法输出结果,就是死循环*/
			i++;
		}
	}
}

do..while循环

基本语法

循环变量初始化

do{

循环体;

循环变量迭代

}while(循环条件);

执行流程

image-20230814104230323

注意事项

  1. do while 是关键字
  2. 也有循环四要素,但是位置不同
  3. 先执行一次循环,后判断,一定会执行一次
  4. 最后有一个分号

练习

public class For{
	public static void main(String[] args) {
		int i = 1;
		int count = 0;
		do{
			if (i % 5 == 0 && i % 3 != 0) {
				System.out.println(i);
				count++;
			}
			/*迭代值放在if后面,否则无法输出结果,就是死循环*/
			
			i++;
		}while (i <= 200);
		System.out.println("满足条件的个数是"+count);
	}
}
import java.util.Scanner;
public class For{
	public static void main(String[] args) {
		/*
		问对方是否还钱,(y/n)如果不还钱接着打(n)还钱就不打了
		 */


		/*接收回答*/
		Scanner input = new Scanner(System.in);
		char answer = ' ';
		do{
			System.out.println("打");
			System.out.println("还钱吗?(y/n)");
			answer = input.next().charAt(0);
			System.out.println("他的回答是"+ answer);
		}while (answer != 'y');
	}
}

双层循环,嵌套循环(难点,重点)

注意事项

  1. 循环嵌套最好不要超过三层,可读性会变得很差
  2. for while do..while都可以作为外层循环和内层循环

练习

import java.util.Scanner;
public class For{
	public static void main(String[] args) {
		/*输出99乘法表*/
		int count = 0;
		int k = 0;
		for (int i = 1 ; i <= 9 ; i++ ) {
			/*j<=i 控制每行的输出个数*/
			for (int j = 1; j <= i ; j++ ) {
				count = i * j;
				/*输出后不换行*/
				System.out.print(i+"*"+j+"="+count +"\t");
			}
			/*每行输出之后换行*/
			System.out.println();
		}
	}
}

import java.util.Scanner;
public class For{
	public static void main(String[] args) {
		/*
		统计三个班级的成绩情况,每个班级有5个学生
		求出各个班级的平均分和所有班级的平均分
		统计三个班及格人数,每个班5人

		 */
		double sum = 0;
		double avg = 0;
		double sum1 = 0;
		double sumAvg = 0;
		int passNum = 0;
		Scanner input = new Scanner(System.in);
		for (int i = 1; i <=3 ; i++ ) {
			for (int j = 1; j <=5 ; j++ ) {
				System.out.println("请输入第"+ i+"个班级的第" + j + "个学生的成绩");
				double score = input.nextDouble();
				sum += score;
				
				if (score > 60) {
					passNum++;
				}
			}
				avg = sum / 5.0;
				sum1 += sum;
				sum = 0;
				System.out.println("第"+ i +"班级的平均分是" + avg);
				sumAvg = sum1 / 15.0;
		}
		System.out.println("所有班级的平均分是" + sumAvg);
		System.out.println("通过的人数是" + passNum);
	}
}

import java.util.Scanner;
public class For{
	public static void main(String[] args) {
		/*
			打印空心金字塔
			    *
			   * *
			  *   *
			 *     *
			*********
		 */
		for (int i = 1; i <= 5 ; i++ ) {
            //打印*之前先打印空格
			for (int k = 1; k <= 5-i ; k++ ) {
					System.out.print(" ");
				}
			for (int j = 1 ; j <= (2*i)-1 ; j++ ) {
				/*第一个位置或最后一个位置输出*号或最后一层输出*号*/
				if (j == 1 || j ==(2*i)-1 || i == 5) {
					System.out.print("*");
				}else{
					System.out.print(" ");
				}
				
			}
            //每行打印结束换行
			System.out.println();
		}
	}
}

标签:语句,int,void,System,while,循环,public
From: https://www.cnblogs.com/ygcDiary/p/17628855.html

相关文章

  • orace表基本操作sql语句记录
    1、修改表注释、字段注释commentontable表名is'注释内容'commentoncolumn表名.字段名is'注释内容'                   --......
  • if语句条件判断中用and还是&
    在Python的条件语句中,可以使用and和&来进行逻辑与操作,但它们有一些不同的用法和行为。and:and是逻辑运算符,用于连接两个条件,并在两个条件都为True时返回True。and是短路运算符,如果第一个条件为False,则不会执行第二个条件的判断。ifcondition1andcondition2:#执行语句&:&是位......
  • Switch语句使用方法和注意点
    Switch语句是一种多分支选择结构,与case、break、default配合使用,控制程序运行流程。Break控制退出Switch代码块,如果不使用break控制,程序会顺序执行后续case语句中的代码。default可以用来做错误处理,专门处理case以外的所有情况。intmain(){ intday=0; printf("请输入数字:")......
  • Linux之shell脚本的循环
    一、循环语句1.1forhelpfor帮助文档foriinabc;doechohello;done[root@localhostdata]#foriinabc;doechohello;donehellohellohelloforiinabc;doecho$i;done[root@localhostdata]#foriinabc;doecho$i;doneabc[root@localhostd......
  • 三、条件语句
    Python-条件语句我们想像一个场景,你平时在登录QQ的时候,系统肯定是判断你的密码和你的QQ账号是否匹配,如果密码不对就会提示你密码错误。那么我们就以这个案例来开始学习条件语句#首先我们定义一个密码变量password=114514#再定义一个你输入的密码(错误的密码)errorPwd......
  • 【转】SQL Server 常用运维语句
    来自:微信公众号  DotNet工控上位机编程链接地址:https://mp.weixin.qq.com/s/wyyuuRMMAgM_4QEvaAdQMw 开发.NET应用时可能会使用SQLServer数据库,对于SQLServer数据库的日常开发,给大家分享一些运维SQL语句。一、场景1:SQLServer死锁分析执行以下SQL,启用SQLServer死锁日志输出......
  • JavaScript之循环及其案例
    1循环循环的目的在实际问题中,有许多具有规律性重复性操作,因此在程序中要完成这类操作就需要重复执行某些语句。1.1JS中的循环在JS中,主要有三种类型的循环语句:for循环while循环do...while循环2for循环在程序中,一组被重复执行的语句被称之为循环体,能否继续重复执行,取决于循环的终......
  • SQL 语句创建数据库表时列字段的初始化值
    在SQL中,创建数据库表时可以指定每个列字段的初始值,这称为"默认值"(DefaultValue)。默认值是在插入新记录时,如果没有显式提供该列的值,则自动应用的值。当插入新行时,如果未提供该列的值,则数据库会使用默认值来填充该列。默认值对于确保数据完整性和提供默认选项非常有用。当插入新行......
  • 循环队列
    机器翻译#include<algorithm>#include<fstream>#include<iostream>#include<map>#include<memory>#include<set>#include<string>#include<vector>#defineDEBUGusingnamespacestd;template<typename......
  • php控制语句
    if语句$a=2;$b=1;if($a>$b){echo"a大于b";}输出:a大于b2.if...else语句$a=1;$b=2;if($a>$b){echo"a大于b";}else{echo"a不大于b";}if...elseif....else$a=1;$b=1;if($a>$b){echo"a大于b&......