一、无限循环
- for
- while
- do…while
格式:
for(; ; ){
System.out.println(“学习”);
}
while(true){
System.out.println(“学习”);
}
do{
System.out.println(“学习”);
}while(true);
二、跳转控制语句
continue
练习:小老虎吃包子
小老虎吃包子,第三个有虫,跳过第三个
continue:结束本次循环,继续下一次循环
public class test2 {
public static void main(String[] args) {
//小老虎吃包子,第三个有虫,跳过第三个
for (int i = 1; i <= 5; i++) {
if (i == 3){
//结束本次循环,继续下一次循环
continue;
}
System.out.println("小老虎在吃第" + i + "个包子");
}
}
}
break
小老虎吃包子,吃到第三个吃饱了,退出循环
break:结束整个循环
public class test2 {
public static void main(String[] args) {
//小老虎吃包子,吃到第三个吃饱了,退出循环
for (int i = 1; i <= 5; i++) {
System.out.println("小老虎在吃第" + i + "个包子");
if (i == 3){
//结束循环
break;
}
}
}
}
三、练习
逢七过
个位是7或者十位是7、能被7整除的数,都打印成 “过”
//逢七过
public class test2 {
public static void main(String[] args) {
// 个位7 十位7,7的倍数都打印成"过"
for (int i = 1; i <= 100; i++) {
//判断
if(i % 7 ==0 || i / 10 % 10 ==7 || i % 10 == 7){
System.out.println("过");
continue;
}
System.out.println(i);
}
}
}
求平方根
需求:键盘录入一个大于等于2的整数 x ,计算并返回 x 的平方根。
结果只保留整数部分,小数部分将被舍去
**思路:**从1开始循环,拿着数字的平方根跟原来的数字进行比较,如果小于,那么就继续往后判断,如果相等,那么当前数字就是平方根,如果大于,前一个数字就是平方根的整数部分
//平方根
public class test2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个大于2的正整数:");
int number = sc.nextInt();
for (int i = 1; i <= number; i++) {
if(i * i == number){
System.out.println("这个数的平方根就是" + i);
break;
}else if(i * i > number){
System.out.println("这个数的平方根是" + (i-1));
break;
}
}
}
}
判断是否为质数
质数:只能被1或者自己本身除尽的称为质数,否则,称为合数
//求是否是质数
public class test2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("输入一个正整数:");
int number = sc.nextInt();
boolean flag = true;
for (int i = 2; i < number; i++) {
if(number % i == 0){
flag = false;
break;
}
}
if(flag){
System.out.println(number + "是一个质数");
}else{
System.out.println(number + "不是一个质数");
}
}
}
猜数字
程序自动生成一个1-100之间的随机数字,使用程序实现猜出这个数字是多少
import java.util.Random;
import java.util.Scanner;
//猜数字
public class test2 {
public static void main(String[] args) {
//生成随机数,范围是1-100
Random r = new Random();
int number = r.nextInt(100) + 1;
Scanner sc = new Scanner(System.in);
//写到一个循环里
while(true){
//键盘输入
System.out.println("输入你要猜的数:");
int guess = sc.nextInt();
//开始猜数
if(guess > number){
System.out.println("猜大了");
}else if(guess < number){
System.out.println("猜小了");
}else{
System.out.println("猜中了");
break;
}
}
}
}