哪位能帮我解答一下,0基础初学者

 

学生吧,这种题工作了的不可能问的
1:do while
其他: for 循环都可以解决,或者递归

控制台输入功能别忘了导入import java.util.Scanner;
1.使用while循环来实现

    public static void main(String[] args) {
        Scanner s =new Scanner(System.in); //用于获取输入
        //不确定的输入次数,通过while(true)来实现,跳出循环使用break
        while (true){
            System.out.println("请输入一个数,输入0结束循环");
            int i = s.nextInt();    //接受的数据类型不一样,使用的函数也不同
            if (i==0){      //当输入0的时候跳出循环
                break;
            }
        }
        System.out.println("程序结束");
    }

2.使用基础的for循环

    public static void main(String[] args) {
        double money = 10000;      //本金
        for (int i = 0; i < 5; i++) {
            //每次的利息
            double interest = money * 0.03;
            //把利息加入到本金中,作为第二年的本金
            money = money + interest;
        }
        System.out.println("五年后的本金为:"+money);
    }

3.使用基础的for循环

    public static void main(String[] args) {
        int sum = 0; //求和的结果
        for (int i = 0; i <1000 ; i++) {
            if (i%7!=0){        //判别不能被7整除的数,加到sum中
                sum = sum + i;
            }
        }
        System.out.println("和为:"+sum);
    }

4.计算一个数的阶乘,可以使用递归或者循环来实现,这里考虑可能整体都是循环的题,采用循环来实现

public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        int n = s.nextInt();
        int factorial = 1;
        //使用循环和累乘来计算
        for (int i = n; i > 0 ; i--) {
            factorial = factorial * i;
        }
        System.out.println(n+"的阶乘为:"+factorial);
    }

不知道出题者为什么要仔细考虑用什么循环?是for不能无限循环还是说while不能指定次数?用什么循环完全看你自己,全for,全while都无所谓,既然是0基础,更需要自己好好学了,习题是练习用的,可以自己写好了有问题不能解决,再来问问看错在哪里了。

// for 无限循环
for (;;) {}
// for 指定次数循环
for (int i = 0; i < 1; i++) {}
// while 无限循环
while (true) {}
// while 指定次数循环
int i = 0;
while (i ++ < 1) {}
// while 指定次数循环
int i = 0;
while (true) {
    if (i == 1) {
        break;
    }
    i++;
}