Java Prime数字

too*_*ter 0 java primes

我正在尝试制作一个素数列表.我编码了它,但它只告诉我1到100的素数是1.我不知道为什么会发生这种情况.我也想为它制作一个JFrame.

import javax.swing.JOptionPane;

public class ProgrammingAssignment7 {
    public static void main(String[] args) {
        //Scanner Scan = new Scanner (System.in);
        //DECLARE VARIABLES

        int x = 1;
        int i = 1;
        int iNumber = 1;
        boolean bNotPrime = false;
        boolean bIsPrime = true;
        int iNumberToTest;
        int iPrimeCheck;
        int iCounter;
        int iResult = 1;
        int iFact = 1;
        int iLimit = 100;
        String OutputStr = null;

        System.out.println("Prime numbers between 1 and " + iLimit);

        //loop through the numbers one by one
        for(i=1; i < 100; i++) {
            bIsPrime = true;

            //check to see if the number is prime
            for(int j = 2; j < i ; j++) {
                if(i % j == 0) {
                    bIsPrime = false;
                    break;
                }
            }
        }

        // print the number
        if(bIsPrime) {
            OutputStr = "The Prime Numbers of 1 - 100 are: " + i + "\n";
        }

        JOptionPane.showMessageDialog(null, OutputStr, "PRIME NUMBERS", JOptionPane.INFORMATION_MESSAGE);

        //System.out.print(i + "\n" );
        System.exit(0);
    }
}
Run Code Online (Sandbox Code Playgroud)

tra*_*ank 5

您正在for循环中调用system.exit(0).这样它将在第一次迭代后终止程序.删除该行,然后尝试运行程序.它会给你正确的结果.