几道java循环练习题(适合新人)

时间:2021-05-19

1.求水仙花数

打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,

其各位数字立方和等于该数本身。

例如:153是一个"水仙花数",

因为153=1的三次方+5的三次方+3的三次方。

//第一题,水仙花数public class demo4 {public static void main(String[] args) { System.out.println("1000以内的数字"); int u=0; for(int i=100;i<=999;i++) { int a=i/100; //百 int b=i/10%10;//十 int c=i%10; //个 u=a*a*a+b*b*b+c*c*c; if(u==i) System.out.println(i+"是水仙花数"); }}}

运行结果如下:

2.求1~1000内的所有完数

一个数如果恰好等于它的因子之和,这个数就称为"完数"。

例如6=1+2+3.编程找出1000以内的所有完数

//第二题 完数public class demo8 {public static void main(String[] args) { for(int i=2;i<=1000;i++) { int sum=0; for(int j=1;j<i;j++) { if(i%j==0) { //如果i能够整除1~它本身的数 sum+=j; } } if(sum==i) { System.out.println(i); } }}}

刚开始想的有点多,还先判断了i是否为质数才做第二个循环哈哈,问题不大…

运行结果如下:

3.有1、2、3、4个数字,能组成多少个互不相同且无重复数字的 三位数?都是多少?

//第四题,四个数的排列组合public class demo7 {public static void main(String[] agrs) { int d = 0; for(int i=1;i<=4;i++) { for(int j=1;j<=4;j++) { for(int k=1;k<=4;k++) { d=i*100+j*10+k; if(i!=j&&j!=k&&i!=k) System.out.println(d); } }}}}

运行结果如下(24个):

4、根据输入成绩输出不同等级

90-100 80-89 70-79 60-69 其他package javalearning.kkb7oob2.Question;import java.util.*;/** * @author chenxu * @date 2020/10/20 - 14:07 */public class Grade{ public static void main(String []args){ Scanner scanner = new Scanner(System.in); int points = scanner.nextInt(); int k = points/10; switch (k){ case 10: case 9: System.out.println("A"); break; case 8: System.out.println("B"); case 7: System.out.println("c"); case 6: System.out.println("D"); default: System.out.println("RUBBISH"); } }}

5.输入一批整数,使用循环求出最大值与最小值,输入0时结束

Version 1:package javalearning.kkb7oob2.Question;import java.awt.*;import java.util.Scanner;/** * @author chenxu * @date 2020/10/20 - 14:31 *///2.输入一批整数,使用循环求出最大值与最小值,输入0时结束public class Compare { public static void main(String[] args) { int max; int min; int kk=1; Scanner scanner = new Scanner(System.in); System.out.println("第"+1+"个数字是:"); int n = scanner.nextInt(); max=n; min=n; for (int k=2;true&&kk!=0;k++ ){//此处true&&kk!=0只需要写成kk!=0即可 System.out.println("第"+k+"个数字是:"); int num = scanner.nextInt(); kk=num; if (num==0){ System.out.println("最大值是"+max+"最小值是"+min); } //System.out.println("最大值是"+max+"最小值是"+min); else if (num>max){ max=num; }else if(num<min){ min=num; } } }}

总结

到此这篇关于java循环练习题的文章就介绍到这了,更多相关java循环练习题内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章