循环语句简单练习
-
求出1-100之间偶数和
public class Test{ 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("1~100之间偶数之和为:" + sum); } }
-
计算从1到100个值以内所有能被3或者17整除的数的和并输出。
public class Test{ public static void main(String[] args){ int sum = 0; for(int i = 1;i<=100;i++){ if(i%3==0 || i%17==0){ sum += i; } } System.out.println("1~100之间能被3或者17整除的数之和为:" + sum); } }
-
3000米长的绳子,每天减一半。问多少天这个绳子会小于5米?不考虑小数
public class Test{ public static void main(String[] args){ int length = 3000; int day = 0; while(length >= 5){ length /= 2; day++; } System.out.println(day + "天后绳子的长度小于5米"); } }
-
求2~100之内的素数。【素数 : 只能被1或本身整除的数】
public class Test{ public static void main(String[] args){ for(int num = 2;num<=100;num++){ boolean bool = true; for(int i = 2;i<num;i++){ if(num % i == 0){ bool = false; break; } } if(bool){ System.out.println(num); } } } }
-
模拟ATM取款机的三次密码校验,当天达到3次输入密码错误,
则提示“账号被冻结”,其他情况则提示还有多少次输入机会
import java.util.Scanner; public class Test{ public static void main(String[] args){ Scanner scan = new Scanner(System.in); int count = 3; while(count > 0){ System.out.println("请输入密码:"); String password = scan.next(); if(password.equals("123456")){ System.out.println("随便取款..."); break; }else{ count--; if(count == 0){ System.out.println("账号被冻结,请携带身份证前往银行办理"); break; } System.out.println("您还有" + count + "次机会"); System.out.println("是否继续录入,录入请按y,退出请按其他任意键"); String str = scan.next(); if(!str.equals("y")){ System.out.println("正在退出**银行系统,欢迎下次再来..."); break; } } } } }
-
要求循环录入2个班的学员成绩,假设每个班都有3个学员,依次录入,统计超过90分的学员人数,以及这批超过90分的学员平均分。
import java.util.Scanner; public class Test{ public static void main(String[] args){ Scanner scan = new Scanner(System.in); int count = 0;//超过90分学生的人数 double sum = 0;//超过90分学生成绩的总和 for(int i = 1;i<=2;i++){ for(int j = 1;j<=3;j++){ System.out.println("请输入第" + i + "个班的第" + j + "名学生的成绩:"); double score = scan.nextDouble(); if(score > 90){ count++; sum += score; } } } System.out.println("超过90分学生的人数为:" + count); double avg = sum/count; System.out.println("超过90分学生成绩的平均分为:" + avg); //保留两位小数 avg = (int)(avg*100)/100.0; System.out.println("超过90分学生成绩的平均分为:" + avg); } }