传说级大佬总结的几道java循环练习题(适合新人)

这篇文章主要给大家介绍了几道java循环练习题,非常适合刚入门的java新人,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

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;
          }
      }
    }
}
总结

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持,需要更多资料的同学可以评论私信我,记得一键三连哦谢谢大家,
也可以添加小助手vx哦:xcw18874131605

最新2021整理收集的一些高频面试题(都整理成文档),有很多干货,包含mysql,netty,spring,线程,spring cloud、jvm、源码、算法等详细讲解,也有详细的学习规划图,面试题整理等,需要获取这些内容的朋友请加Q君羊:547998459

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值