有人可以帮我修复此程序吗?

问题描述 投票:-1回答:1

这是正确的语法,并且100%有效。但是我的讲师想要此语法的工作没有'break'功能,但仍然使用'do-while'功能。有人可以帮助我吗?我被困住了:(

这里是代码:

import java.util.Scanner;
public class NewClass {
    public static void main(String[] args){
        Scanner input = new Scanner(System.in);
        int[] bil = new int[10];
        int x=0;
        while(x!=10){
            System.out.print("Input ke-"+(x+1)+" : ");
            bil[x]=input.nextInt();
            if(bil[x]==0) {
                x++;
                break;
            }
            x++;
        }
        System.out.println("==============================");
        for(int j=0; j<x; j++){
            System.out.println("Data ke-"+(j+1)+": "+bil[j]);
        }
    }
}
java arrays input output do-while
1个回答
0
投票
import java.util.Scanner;
public class NewClass {
    public static void main(String[] args){
        Scanner input = new Scanner(System.in);
        int[] bil = new int[10];
        int x=0;
        do{
            System.out.print("Input ke-"+(x+1)+" : ");
            bil[x]=input.nextInt();
            x++;
        }while(x!=9 && bil[x-1] != 0);
        System.out.println("==============================");

        int j = 0;
        do{
            System.out.println("Data ke-"+(j+1)+": "+bil[j]);
            j++;
        }while (j != x-1);
    }
}

在循环运行后检查条件是否执行。因此,您可以使用它们来打破循环。

我在第一个循环中将x!= 10更改为x!=9,因为在x变成9后循环必须中断,否则数组将存储11个元素。

对于for循环也做了类似的事情。

如果您想了解更多,请进一步研究do-while是出口控制的循环,而while是入口控制的循环。

© www.soinside.com 2019 - 2024. All rights reserved.